我已经实现了一个已启动的Service
,它将继续在后台运行(onStartCommand returns START_STICKY
)。在5.1设备上,我发现从最近任务中滑动当前任务会导致Service
无法重启,但4.2设备上的情况并非如此。
在SO上建议的解决方法是设置警报以在1秒后重新启动service
也不起作用。
经过一番研究后,我发现在BATTERY
设置下,我们可以选择是否在后台冻结应用程序。默认行为是冻结后台执行。
我是否需要寻求允许应用继续在后台运行的特定permissions
?
答案 0 :(得分:0)
为了避免背景问题,您需要避免在
中进行ui更新protected void onPause() {
您活动的功能。
如果您使用的是服务
对于Android 2.0或更高版本,您可以使用startForeground()
方法在前台启动服务。
启动的服务可以使用startForeground(int,Notification)API 将服务置于系统考虑的前台状态 它是用户积极意识到的东西,因此不是 当内存不足时被杀的候选人。