[英]Kivy - Android background service doesn't play audio
I'm trying to play an audio file from the background service but it doesn't play it. 我正在尝试从后台服务播放音频文件,但无法播放。 The log says it does for a while and stop but the audio can't be heard. 日志说它会停一会儿然后停止,但听不到声音。
The service is called when the app is paused: 暂停应用程序时将调用该服务:
from jnius import autoclass
service = autoclass('{}.Service{}'.format('kivyapp.music', 'S1'))
mActivity = autoclass('org.kivy.android.PythonActivity').mActivity
argument = ''
service.start(mActivity, argument)
/service/main.py /service/main.py
from jnius import autoclass
MediaPlayer = autoclass('android.media.MediaPlayer')
AudioManager = autoclass('android.media.AudioManager')
if __name__ == '__main__':
nowPlaying = MediaPlayer()
nowPlaying.setDataSource('music00.mp3')
nowPlaying.prepare()
nowPlaying.setLooping(False)
nowPlaying.setVolume(0.5, 0.5)
nowPlaying.start()
I would like to know if I'm doing something wrong. 我想知道我做错了什么。 Thank you. 谢谢。 Log.txt log.txt的
I think the main problem was that, MediaPlayer didn't like me requesting for getCurrentPosition() every second. 我认为主要的问题是MediaPlayer不喜欢我每秒请求getCurrentPosition()的方法。 Also adding :sticky
to my buildozer services = service:service.py seems to solve the problem. 还添加:sticky
到我的buildozer services = service:service.py似乎可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.