如何让Android应用程序始终运行(Service and BroadcastReceiver)?

时间:2013-05-18 06:29:21

标签: java android service broadcastreceiver

我意识到一个Android应用程序总是必须在后台保持激活状态。为此,只需使用在用户离开应用程序后仍保持活动状态的服务即可。

然而,如果用户重新启动,则应用程序以及服务将不再活跃。

如何解决这个问题?

我想到了 BroadcastReceiver 的想法,但我不知道它是否是最好的解决方案。

先谢谢。

2 个答案:

答案 0 :(得分:2)

如果手机重启,您希望服务重新启动吗?

创建一个侦听BOOT_COMPLETE的BroadcastReceiver(您需要获得此权限)。让它开始你的服务。

Android可能由于内存不足而停止服务。如果你有onStartCommand返回START_STICKY并让你的onCreate服务调用startService本身,那么你将在内存可用时重启。

答案 1 :(得分:0)

如果服务未运行,您可以设置警报以唤醒服务,并在启动时设置广播接收器,以便在设备启动时启动服务。