猿问

为什么有时我的 Android 应用程序会在没有逻辑解释的情况下重启?

我正在Android Studio中开发一个科学应用程序。它工作顺利。


源代码文件集不小,但是,由于我没有实际的用户界面,所以只有一个活动,没有意图。


所有初始化代码都在里面OnCreate。大多数时候,当他离开前台时,我的应用程序会保留所有数据。


但是,也许(我找不到此事件的模式)他丢失所有数据并重新启动(显示白屏 2 / 3 秒),即使手机没有进入锁定屏幕并且只有 2 个应用程序正在运行.


在某些情况下,我为另一个应用程序(如WhatsApp)通勤并为我的应用程序恢复,但我的数据消失了。应用再次重启。


没有错误消息,没有 logcat。没有什么。


大多数情况下,当我锁定屏幕并再次进入时,我所有的应用程序数据都在那里。


PS:我的方向被锁定了。


PS 2:我已经阅读了所有相关问题,但没有任何提示。基于一个答案,我尝试输入onCreate以下代码。


if (!isTaskRoot() {

      && getIntent().hasCategory(Intent.CATEGORY_LAUNCHER)

      && getIntent().getAction() != null

      && getIntent().getAction().equals(Intent.ACTION_MAIN)) {


      finish();

      return;

    }

对我来说没有变化。


湖上湖
浏览 82回答 1
1回答

汪汪一只猫

这是我在移动世界开发的第一个应用程序,为了扩展,Android世界在我看来,有些问题只有在对解决方案有提示的情况下才有可能找到解决方案。这是一个矛盾。一个人不知道,但必须知道解决不知道!而且,在这种情况下,情况并非如此。没有提示。只是问号。之前,我没有注意到任何模式。人们有时会如此自动地行事……然而,突然一分钱掉了下来。我偶然发现了解决方案。幸运的是!不到一百万年,我可以假设如果有人按下activity按钮Back,(底部的右按钮),你实际上退出了应用程序,即使它仍然作为底部左按钮(应用程序切换器按钮)的运行应用程序)当我注意到它时,我开始用另一个重点进行研究。我发现了两个来源:Disable back button in android和Android - Simulate Home click所以解决方案就是让Back按钮像主页按钮(底部的中间按钮)一样工作。在不丢失应用程序数据的情况下返回home screen。这只需放入以下代码即可完成onCreate,这是我唯一的activity代码。 override fun onBackPressed() {    val i = Intent(Intent.ACTION_MAIN)    i.addCategory(Intent.CATEGORY_HOME)    startActivity(i)  }
随时随地看视频慕课网APP

相关分类

Java
我要回答