我如何知道 Android 应用程序何时启动和销毁?

How do I know when an Android app is launched and destroyed?

我需要 运行 应用程序启动和完全退出(销毁)时的一些代码。我正在使用 onCreate 和 onDestroy 但不幸的是屏幕方向更改破坏并重新创建了 activity.

每次应用程序启动时,都会调用 启动器 activityonCreate 方法。因此,您必须将所需代码放入 Launcher activity.

onCreate 方法中

并且要检测您的应用程序是否被销毁,您可以 override onDestroy 方法(就像添加 onCreate 一样)来自 Override unimplemented method 菜单。并将代码放入此方法中,您希望在应用程序被销毁时执行。

查看Android申请http://developer.android.com/reference/android/app/Application.html

您可以知道应用程序创建的时间 (Application.onCreated)

但是您无法知道应用程序何时销毁。 Application.onTerminate() 仅用于模拟进程环境。

你可以试试这个,如果你的代码可以在后台发生(如果你需要在 UI 线程上发生一些事情就不会工作):

让您的 activity 保存对您扩展的线程的引用,我们称它为 MyThread 运算符。

在 onCreate 中,执行以下操作:

if(operator==null){
    operator = new MyThread();
    operator.start();     
}

然后,在 MyThread 中,将您的代码放在 run()interrupt().

这两个方法中

当您的 activity 通过方向更改重新创建时,它将使操作员引用您的后台线程。当您实际关闭您的应用程序时,android 将在几秒钟后终止您的操作员并因此执行您的代码。

如果我错了,请大家指正,我最近没睡太久,线程总是一个复杂的话题...