我终于完成了我的应用程序,但它在我的手机上无法正常工作 - 似乎应用程序总是在设备进入睡眠状态后打开时重新创建(尽管我的最好的努力)给我带来了很多麻烦。
正在寻找防止应用程序被杀的方法,我遇到了startForeground
...据我所知,它只将应用于服务(如果没有,我可以弄清楚如何将它应用于活动 - 我已经尝试过了。
是否有一个选项可以让我免于进行大量的改变? (我几乎不明白我到目前为止所做的事情......)
我已经阅读了某个地方,正在进行通知工作,或者工作到froyo - 我甚至不确定。
如果这是真的,我是否必须关注能源消耗?我在AlarmManager
上使用BroadcastReciever
部分唤醒锁定,所以在闹钟被触发之前,我实际上并不需要做任何事情 - 只需保持应用程序活着。
答案 0 :(得分:0)
如果您在服务Service.START_STICKY;
中退回onStartCommand
,则应重新启动,以防您的应用终止。因此,如果您有任何想要运行更长时间的代码,请将其置于服务中。
以下是一个例子:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
registerAlarmBroadcast();
return Service.START_STICKY;
}