我有一个以BOOT_COMPLETED
开头的服务。此服务定期将GPS数据发送到服务器。有时操作系统会在内存中杀死此服务,但未调用onDestroy()
服务方法。我的服务重新启动时,在哪里可以设置保存和恢复的值?
答案 0 :(得分:0)
您可以使用onTrimMemeroy()
和onLowMemeroy()
方法来处理此问题,有关这两种方法的详细说明,您可以从here获取
答案 1 :(得分:0)
简单说明:您不能使用常规服务生命周期事件。
如果未调用<% response.sendRedirect("sitesList.action"); %>
方法,则系统会严格终止该进程,而不会正确终止该进程。因为没有事件,你必须使用其他回调来检测可能的杀戮情况。
唯一可能有用的可能是收听onDestroy()
或onTrimMemeroy
,虽然这些回调并不意味着您的服务会被杀死,但它可能有助于您在保存数据时作为指标。< / p>
更多信息可以在这里找到:http://developer.android.com/reference/android/content/ComponentCallbacks2.html
作为参考,如果服务正确终止,这是服务的生命周期: