优先使用Android服务播放背景音乐

时间:2013-06-17 09:17:31

标签: android service streaming media-player kill

我有一个可以传输背景音乐的Android服务,偶尔托管过程似乎会在某些负载下播放音乐,例如在我的Galaxy S3(4.1.1)上打开Chrome中的十几个重磅网站标签。从我所做的研究中我知道这是许多论坛所涵盖的主题,但我希望在这里得到一些其他技术的建议。

由于缺乏更好的表达方式,我想知道是否有办法减少Android杀掉我的服务的机会,因为它认为它不如其他进程那么重要。

到目前为止我已经实施的事情:

  1. UI级活动/片段绑定到服务以及通过onStart()发送播放/暂停等命令(当应用程序本身不在前台/用户不可见时会发生问题 - 除了通知)。
  2. 服务实现startForeground()/ stopForeground()
  3. 服务还实现了AudioFocus。
  4. 方法我读到并考虑过: 使用类似IntentService / HandlerThread的东西在自己的工作线程上运行MediaPlayer并将线程的优先级设置得更高,但由于Android的进程优先级功能没有考虑我的应用程序的内部线程管理,我不预见这会改善情况(请如果这个陈述错了,请纠正我。)

    在后台播放音乐的同时浏览一堆网站我认为这不是一项艰巨的任务,特别是在像S3这样的高规格设备上,我认为用户宁愿让他们的音乐在后台继续播放如果这意味着在Chrome中切换标签意味着它有时必须刷新一些页面。

    如果有人事先得到一些提示或建议。

0 个答案:

没有答案