7

按需使用IntentService后台播放是否合理?MediaPlayer根据开发人员指南IntentService只有在实际工作时才会持续。考虑到每次我想再次播放曲目时重新初始化的开销MediaPlayer,这似乎是一个坏主意......

所以我的问题是:使用这种Service. 它会对系统/应用程序的性能产生明显的影响吗?我应该使用我自己Service的专用工作线程实现吗?

4

1 回答 1

12

按需使用 IntentService 进行后台 MediaPlayer 播放是否合理?

恕我直言,不,因为您不能以这种方式真正更改曲目。此外,您需要知道轨道何时完成,而您不能这样做,除非泄漏内存。最后,这意味着 Android 将终止您的进程,可能在onHandleIntent()结束后几毫秒,这使得音乐播放器毫无用处。

我应该使用自己的 Service 实现和专用的工作线程吗?

您可能不需要线程,因为其中大部分MediaPlayer已经是异步的。只有当您自己进行网络 I/O 或磁盘 I/O 或其他事情时,您才可能需要自己的线程。但是拥有一个Service——并且可能是一个前景Service——是音乐播放器的典型方法。

于 2013-08-08T12:59:21.720 回答