当android杀死我的进程时启动MainActivity

时间:2016-02-02 22:05:05

标签: java android

当我的应用程序处于非活动状态一段时间后,android会终止其进程,使所有静态变量为null。我希望我的应用程序启动MainActivity(在清单中声明为启动器的活动),而不是当我的应用程序被最小化并随后被杀死时前景中的活动。

提前致谢

3 个答案:

答案 0 :(得分:0)

如果您需要传递该活动的一些信息,您可以故意转到MainActivity。

答案 1 :(得分:0)

另一种可能性:如Clearing the back stack中所述,您可以将clearTaskOnLaunch="true"添加到根活动中:

  

如果在任务的根活动中将此属性设置为“true”,则   每当用户离开时,堆栈都会被清除为根活动   任务并返回它。换句话说,它与之相反   alwaysRetainTaskState。用户始终返回其中的任务   初始状态,即使在离开任务一会儿之后。

答案 2 :(得分:0)

执行此操作的正确方法是将您需要的数据(您只存储在静态变量上)存储在数据库中,并将内存用作缓存。

不那么好的锤击时间这样做的方式......很简单。在需要该信息的每个onCreate个活动中,检查信息是否为空,如果是,则调用finish()startActivity所需的信息。

@override
 protected void onCreate(){
       super.onCreate();
       ...
       if(Singleton.getInfo() == null){
        this.finish();
        startActivity(...)
       }
 }