我有一个应用程序,我想在应用程序放在后台时收集用户位置。虽然应用程序在后台,但我希望使用给定的intervall将位置保存到服务器,例如15分钟。最好的方法是什么?我已尝试使用长期运行的服务,但服务的烦人之处在于,如果系统由于缺乏资源而导致应用程序死亡,它就会死亡。我希望应用程序只在用户将其从“最近的应用程序”中删除时才停止收集位置。或力以另一种方式退出。我现在设置了一个触发服务的警报(在执行其定位后停止运行),但是当资源不足时,警报也会被杀死,对吗?
答案 0 :(得分:0)
您应该查看Service.startCommand()
返回的值:
Service.START_REDELIVER_INTENT
这些常量将允许系统在需要时重新启动服务。如果系统没有重新启动它,那么这是一个非常糟糕的做法:如果系统释放了一些内存,你可能会错过一些RAM来运行你的服务;)