Android:应用程序结束时停止服务和警报
我有一个由几个活动组成的应用程序。当应用程序启动时,使用Android:应用程序结束时停止服务和警报,android,android-alarms,Android,Android Alarms,我有一个由几个活动组成的应用程序。当应用程序启动时,使用AlarmManager计划一些报警,并启动一些服务: AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); a.setInexactRepeating(...) .... 我想知道当用户退出应用程序时,如何保证每项服务都已停止,每一次警报都未计划好 问题是用户可以从不同的活动中离开应用程序,我不喜欢在每个活动中重写ondesto
AlarmManager
计划一些报警,并启动一些服务:
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
a.setInexactRepeating(...)
....
我想知道当用户退出应用程序时,如何保证每项服务都已停止,每一次警报都未计划好
问题是用户可以从不同的活动中离开应用程序,我不喜欢在每个活动中重写ondestory
方法。当应用程序结束时,我是否可以收到任何已知的意图
我还发现Android应用程序可以有一个从application
扩展而来的类,使用onTerminate
方法:
public class MyApplication extends Application {
@Override
public void onTerminate() {
...
}
}
但文档非常清楚:“永远不要依赖于调用此方法;在许多情况下,不需要的应用程序进程只会被内核杀死,而不执行任何应用程序代码”
非常感谢您的任何建议
我想知道去哪里的路
确保每项服务都已停止,并且
每次警报都是不定时的
用户退出应用程序
Android中没有“用户退出应用程序”这样的东西
我有什么已知的意图吗
当应用程序结束时接收
没有
我还发现一个安卓系统
应用程序可以有一个
从应用程序扩展,并使用
终止法
在许多情况下,在没有更多运行的组件之后的某个时候,将调用此函数。在您的情况下,存在正在运行的组件(服务)
但文件非常清楚:
“永远不要依赖于这种方法
称为;在许多情况下是不必要的
申请过程将非常简单
被内核杀死而不执行
“任何应用程序代码”
我所知道的唯一不调用它的情况是进程被终止,在这种情况下,您的服务也将被取消,尽管计划的警报不会被取消