在android中按下主页按钮后,应用程序没有打开主要活动

Mih*_*hah 7 android

在我的应用程序中,活动A是启动器活动,从A称为B,从B称为C,我有超过5个活动.在C中,当我按下主页按钮,再次打开我的应用程序时,它打开C,这在我的情况下很好.但是在按下C中的主页按钮后,当它闲置一段时间并且应用程序被杀死时,之后当我打开我的应用程序时它会打开C.但我想打开那个时间的主启动器活动.我怎样才能做到这一点?

A> B> C> HOME按钮>空闲一段时间>应用程序被杀>打开应用程序> C.

在这种情况下,我想打开主要活动A而不是C.

Dav*_*ser 6

您将需要检测到Android已经杀死了您的进程,然后用户返回到应用程序(导致Android创建新进程).我已经在很多答案中描述了如何做到这一点:

/sf/answers/2086182101/

/sf/answers/1909325421/

/sf/answers/787436331/

  • 不,在用户再次启动应用程序之后,只有最后打开的活动被放在堆栈上(在OP的情况下是活动C)并且它的`onCreate()`被调用.然后用户导航回B - >调用B的onCreate(),依此类推.我在我的应用程序中使用了大卫的解决方案!精彩的解决方案,谢谢! (2认同)
  • @azizbekian正如@Damnum所说,当Android创建一个新的OS进程时,它只会从堆栈中创建最顶层的`Activity`.在用户返回其他活动之前,不会重新创建其他活动. (2认同)

Chi*_*rag -1

按主页可将您从应用程序切换到主屏幕,同时让应用程序在后台运行。

除了当您的手机内存等资源不足时,它会开始关闭在后台运行的应用程序,以便您的手机有足够的资源来完成您现在正在尝试执行的操作。游戏通常是手机为了节省资源而首先“杀死”的应用程序之一,因为它们通常比其他应用程序使用更多的内存和 CPU。这就是为什么有时你的游戏仍然运行暂停,有时 Android 已经为你关闭了它。