gpt4 book ai didi

java - 为什么我的 Activity 被停止?

转载 作者:行者123 更新时间:2023-12-02 06:53:38 26 4
gpt4 key购买 nike

我从另一位员工那里“继承”了一个应用程序,现在我必须进行一些修改。由于某种原因,每当我开始一项 Activity 时,前一项 Activity 都会停止而不是暂停。我看过THIS answer ,但是虽然我的应用程序是条形码扫描仪应用程序(使用相机),但没有其他相似之处。我正在启动器 Activity 和其他非相机相关 Activity 之间移动,并且启动器 Activity 正在停止。这不是由于 android:launchMode="singleTask" 因为我已经从 list 中注释了该行。

需要暂停启动器 Activity 而不是停止启动器 Activity 的原因是我打算实现一个公共(public)静态 ArrayList,我将向其中添加来自其他 Activity 的对象。

有人知道为什么会发生这种情况吗?这让我发疯。

最佳答案

请记住,在内存不足的情况下,有报告称 Android 操作系统会直接卸载代表您的 Activity 的类。这意味着该类中的任何静态变量都将从内存中删除。下次您拥有 Activity 的实例时,静态变量将不再为 null,而是为空。我遇到了类似的问题,单例在一段时间后就消失了(问题实际上是不负责任的内存使用,但仍然 - 不要依赖静态对象来保存数据)

只需序列化您的对象并保留它们,或者序列化其部分数据并在需要时使用它来创建新对象。

关于java - 为什么我的 Activity 被停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17693595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com