当前位置: 首页 > 知识库问答 >
问题:

为什么我的应用程序在没有明显原因的情况下被最小化?

葛永丰
2023-03-14

TL;从一个活动切换到另一个活动并返回后,当我点击工具栏中的导航图标时,DR My app会最小化(就像按下了home按钮一样)。

行动的详细流程:

  • 打开应用程序,活动1出现

我知道这个应用程序被最小化了,因为当我打开它时,Activity1在屏幕上有一个打开的抽屉

没有异常或日志(级别为Verbose),这只发生在OnePlus 2上(该应用程序在Nexus 4上运行良好)

共有1个答案

魏风华
2023-03-14

在我的情况下,我需要在2个不同的堆栈之间切换。我使用FLAG_ACTIVITY_REORDER_TO_FRONT来处理start活动完成()

但是我和你有同样的问题,在一种情况下它被最小化了:

活动类别A(实例1)-

仅当堆栈上的两个A类实例连续出现时才会发生这种情况。我通过adb shell dumpsys窗口窗口| grep“窗口#”检查堆栈

在我尝试了大量的FLAG组合,但没有成功之后,我想出了一个好主意,即创建一个Distinct活动类。

虽然我已经能够检测到这是堆栈上的同一个类(使用registerActivityLifecycleCallbacks来推/弹出活动列表堆栈),但是当我想返回时,我只需调用Distinct类,并在onCreate()中立即将其设置为finish()。然后在finish()。由于Distinct类不是A的同一个类,因此它能够将\u活动\u重新排序\u到\u FRONT实例1并关闭实例2。

[更新]

这个答案实际上有问题,但最终我找到了更好的方法,并把答案写在这里。

 类似资料:
  • 问题内容: 说我有一个清单。在什么情况下被称为? 我基本上理解了文档,但是我也想看到一个示例来毫无疑问地阐明其用法。 问题答案: 当Python尝试将两个对象相乘时,它首先尝试调用左侧对象的方法。如果左对象没有方法(或者该方法返回,表明它不适用于所讨论的右操作数),则Python希望知道右对象是否可以进行乘法。如果右操作数与左操作数的类型相同,Python就会知道它不能,因为如果左对象不能做到这一

  • 我是Quarkus新手,正在使用Eclipse和Quarkus插件。 无论我是手动使用启动还是使用Eclipse夸克启动配置,应用程序似乎总是在运行测试。 我看到了类似的东西 有一段时间什么都没发生,直到我看到Quarkus标志、我的日志消息等。 也许我还没有仔细阅读文档,但我发现没有配置来关闭它并直接在开发模式下启动应用程序。 有人能帮我吗?

  • 问题内容: 我想要一种简单的,最好是基于注释的方式,将外部属性注入到Java程序中,而无需使用spring框架() SomeClass.java application.yml 在标准库中是否有建议的方法? 问题答案: 我最终使用apache commons配置: pom.xml: src /…/ PropertiesLoader.java /src/main/resources/applicat

  • Perl有一个未定义函数的概念。已声明但未定义的函数。 这个函数现在存在于符号表中,它可以用来解析方法调用。但是为什么这个“特征”会存在呢?在C语言中,这是因为函数是类型检查的,有时您希望在定义之前进行调用(例如解决循环依赖关系)。但是Perl没有这样的特性,所有的函数符号都是在运行时而不是编译时解析的。 > 如果不是原型,为什么它会存在? 为什么在方法解析中使用未定义的子程序?为什么不完全忽略它

  • 这块没有益处,也没有border margin padding但是不知道哪里来的空隙,ios存在Android没有问题 我解决办法是给了一个-0.5rpx的margin解决了,但是边缘有点不规则,也不是最终解决方案,想知道什么原因导致的

  • 我有一个模块化的JavaFX应用程序,具有以下Java代码: 这是模块信息。java文件: 我使用以下命令编译模块化JavaFX应用程序: 我使用以下命令打包模块化JavaFX应用程序: 然后我将应用程序保存在我的/应用程序文件夹中(我在Mac OS上),然后打开应用程序。应用程序会打开一个500x500窗口,但不会渲染任何图形,也不会打开web浏览器。应用程序只打开一个白色空白500x500窗口