Android中application取值为空

个人观点(勿喷)

android的数据存储

存在网络服务器上的数据和存在本地(数据库或者SharedPreferences)的数据,没什么大问题

但是有时候为了方便,我们会将数据存储到application中,然后在其他页面获取,从逻辑上看是没有什么问题的。

但是有时候你会发现,明明存进去的值,刚刚还能获取到,结果隔一会再调用就奔溃了,而且debug或者log时有时出现null的情况

这个时候就会懵逼了,实际上Android本身就给出了说明:在内存不足的时候,系统会杀死优先级低的进程。

当系统内存不足时,会杀死application,当你重新打开的时候,会重新建一个application,然后开启上次停留的Activity,但是新建的application值都是为初始值,没有之前存储的数据,结果就是activity获取不到数据出现错误。

所以不要在application中存储数据,一旦内存不足被杀死就会出现bug,可以使用其他的数据存储方式。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值