标签:android android-intent nullpointerexception
我从Web服务器获取某些数据,比如说Activity_1中的userName.然后我想在Activity_2中使用相同的数据
所以我把这个userName设为Public Static,并在Activity_2中使用这个
Activity_1.userName
但是当我在Activity_2中并按下Home Button并在5分钟后重新打开应用程序时,此Activity_1.userName将变为Null,因为Activity_1数据已被销毁.我得到NullPointerException
如何以简单的方式解决这个问题.
我刚刚给出了一个userName的例子,但实际上它的其他一些数据每天都在变化,比如说“当天的新闻”
许多人建议删除public static并将该userName发送为:
Intent.putExtra("user_name", userName);
但这与我正在做的不一样.我的意思是即便这样我也会得到NullPointerException吗?
解决方法:
有两种方法可以做到这一点.
>始终确保Activity1是应用程序中的起始活动.我的意思是,如果用户关闭应用程序并再次重新启动它,应用程序应该来自Activity1,从而再次获取数据.然后只去Activity2.另请注意,您可以使用AsyncTask从Activity2中的Web中获取数据.
>在SharedPreferences中保存Activity1中的数据,在Activity2中始终使用SharedPreferences读取值.
标签:android,android-intent,nullpointerexception 来源: https://codeday.me/bug/20191007/1866150.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。