我有一个可以传输背景音乐的Android服务,偶尔托管过程似乎会在某些负载下播放音乐,例如在我的Galaxy S3(4.1.1)上打开Chrome中的十几个重磅网站标签。从我所做的研究中我知道这是许多论坛所涵盖的主题,但我希望在这里得到一些其他技术的建议。
由于缺乏更好的表达方式,我想知道是否有办法减少Android杀掉我的服务的机会,因为它认为它不如其他进程那么重要。
到目前为止我已经实施的事情:
方法我读到并考虑过: 使用类似IntentService / HandlerThread的东西在自己的工作线程上运行MediaPlayer并将线程的优先级设置得更高,但由于Android的进程优先级功能没有考虑我的应用程序的内部线程管理,我不预见这会改善情况(请如果这个陈述错了,请纠正我。)
在后台播放音乐的同时浏览一堆网站我认为这不是一项艰巨的任务,特别是在像S3这样的高规格设备上,我认为用户宁愿让他们的音乐在后台继续播放如果这意味着在Chrome中切换标签意味着它有时必须刷新一些页面。
如果有人事先得到一些提示或建议。