繁体   English   中英

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

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

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

看看Android应用程序http://developer.android.com/reference/android/app/Application.html

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

但是您不知道应用程序何时被破坏。 Application.onTerminate()仅用于仿真流程环境。

每次应用启动时,都会调用启动程序活动onCreate方法。 因此,您必须将所需的代码放入Launcher活动的onCreate方法中。

并且要检测您的应用程序是否被破坏,您可以从“ 覆盖未实现的方法”菜单中override onDestroy方法(就像添加onCreate )。 并将代码放入要销毁应用时要执行的此方法中。

如果您的代码可以在后台发生,则可以尝试这样做(如果您需要在UI线程上进行某些操作,则无法使用):

让您的活动持有对您扩展的线程的引用,我们将其称为MyThread运算符。

在onCreate中,执行以下操作:

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

然后,在MyThread中,将代码放入两个方法run()interrupt()

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

如果我错了,请有人纠正我,我最近没睡太久,线程始终是一个复杂的话题...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM