嗨,我需要一个 MediaPlayer 实例在后台运行,所以我开始使用服务。
一切正常,但一段时间后我得到 ANR(应用程序无响应),即使 UI 工作正常。很公平,我知道服务仍在主线程上运行,所以 ANR 是有意义的。
所以我尝试使用 IntentService,它应该会产生自己的线程,但我除了头痛什么都没有。当工作人员独立时,IntentService 似乎没问题,但这里情况并非如此,因为每次我需要更改轨道时,我都需要从主应用程序调用 startService(intent) 方法,并且我不想以多个 MediaPlayer 实例结束互相玩。。
我还看到了一个提示,建议在服务中使用线程。如何使用媒体播放器做到这一点?声明应该在那个线程中还是只是“准备/开始等”?据我所见,这似乎不起作用,但我可能只是错误地实施了它
任何提示都非常感谢,可能有一个非常简单的例子。
干杯