应用程序数组列表清除
我有一个有多个屏幕的应用程序。假设 ABCD 和 D 也可能打开一些外部应用程序。
所有这些活动都共享数据,即一个数组列表,我在我的应用程序类中创建了对它的引用。 (我创建了一个扩展 Application 的类并引用它的清单。)因此所有这些都使用 arraylist 的单个实例。 A 从第一个屏幕开始初始化数组列表,其他人可能会修改它。
问题是当我在模拟器上测试这个时,没有任何问题。但在“某些”手机上,导航数组列表超过 3 个屏幕后就会从堆中清除。不管尺寸有多小。
I have an application which has several screens. Lets say A B C D and D might open some external application as well.
All this activities share data, an arraylist with one another and I have created a reference to it in my Application class. (I have created a class which extends Application and referred to it manifest.) So all these are using single instance of arraylist. A initializes the arraylist since its first screen and others might modify it.
The problem is when I test this on emulator nothing gets broken. But on 'some' phones after 3+ screens of navigation arraylist just clears from the heap. No matter how small size is.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
为 ArrayList 使用
singleton
类Use a
singleton
class for your ArrayList使用单例设计模式或使对象静态
使用单例设计模式,您可以:
Use singleton design pattern or make your object static
With the Singleton design pattern you can:
在您的第一个
Activity
中将ArrayList
声明为static
,然后在任何不会分解的活动中使用它。Declare
ArrayList
asstatic
in your firstActivity
then use it from any it will not broke up.