为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

湖上湖 2023-04-26 17:17:57
我正在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;    }对我来说没有变化。
查看完整描述

1 回答

?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

这是我在移动世界开发的第一个应用程序,为了扩展,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)

  }


查看完整回答
反对 回复 2023-04-26
  • 1 回答
  • 0 关注
  • 81 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信