繁体   English   中英

如何让Android应用程序每次打开时都停止重启?

[英]How can I make an android app stop restarting every time it is opened?

我开发了一个小的Android应用程序,最近发现了一个奇怪的行为

当我使用usb和eclipse安装此应用程序后导航到任意Activity时,我可以离开应用程序,转到android主屏幕或其他应用程序,然后通过再次“启动”应用程序直接返回到提到的任意Activity。

但是当我通过下载apk文件直接在手机上安装应用程序时,当我切换到另一个应用程序或android主屏幕后,当我返回此应用程序时,我将始终返回到应用程序的根Activity。

有谁知道这种行为来自何处或如何解决这个问题?

更新:我在两种情况下都在真实硬件上运行应用程序。

将以下代码放到root Activity最终解决了这个问题。

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) { 
        // Activity was brought to front and not created, 
        // Thus finishing this will get us to the last viewed activity 
        finish(); 
        return; 
    } 

}

来源: 应用程序始终从根活动开始新鲜而不是恢复后台状态(已知错误)

放置在您的manifest文件android:launchMode="standard" ,表示您只想显示一次的特定activity

这是因为系统处理应用程序的方式。

根据其他应用程序的需要销毁应用程序完全取决于系统。

当您在模拟器上运行它时,它不会破坏您的应用程序,因此,您从您离开的同一个Activity恢复。

但是当您在设备上运行它时,设备可能会觉得应用程序占用的内存需要被释放,因此会破坏应用程序。 下次启动时,它从头开始。

暂无
暂无

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

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