热点新闻
Android不要通过Application来保存数据或其他其他变量
2023-08-05 01:12  浏览:1072  搜索引擎搜索“手机财发网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在手机财发网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布

在我们的应用程序中,很多地方可能用到同一个数据。很多时候我们可能不想通过Intent在Activity之间传递数据或者持久化的存放这些数据。

我们可能会将这些数据存在在Application中,这样我们就可以在所有的Activity中访问了,这个方法简单,但是实际上是错误的。你的程序很可能会因为报空指针错误。



















我们在MainActivity中获取Appliction实例,并为name变量赋值,然后跳转到SecondActivity中再去获取name变量的值,并调用大写方法打印出来。

这里有个场景,就是当我们按Home键APP位于后台时,当内存不足时,系统会回收我们的APP。

现在我们模拟一下这个场景后台内存不足杀死APP情况,有多种方式:

adb命令杀死进程,android studio DDMS 的stop process等等方式,我用的是







当我们杀死进程后,再次点击APP图标时







直接报空指针错误了。

原因是:Application对象不会一直在内存中存在,可能被杀掉,不会恢复以前的信息,会创建一个Application对象,然后重新打开之前用户按Home键离开的那个Activity。

发布人:8e7d****    IP:61.145.48.***     举报/删稿
展会推荐
  • 2023-08-05浏览:977
让朕来说2句
评论
收藏
点赞
转发