您的位置:首页 > 其它

记一次获取当前用户名错误的bug

2015-12-23 10:12 211 查看
在Android应用中很多时候都会要获取当前登录用户名,一般的逻辑是这样的,在登录Activity中,登录成功的时候记录当前用户的用户名,通过sharePrefrence保存;在BaseActivity中获取当前用户名,也是通过sharePrefrence获取。
这个本没什么问题,错就错在我在登录成功后Activity oncreate里把当前用户记录了下来,代码类似

mCurrentUserAccount = getCurrentAccount();

 这样做可以避免每次都从xml里取数据,本来是个好方法,但是我登录后的Activity(IndexActivity)的启动模式是singleTask,这就有问题了。因为第一次登录后,IndexActivity已经创建了,然后我注销的时候再跳转到Login,再登录的时候就不会再走IndexActivity的oncreate了,所以mCurrentUserAccount也就还是之前的登录用户。

怎么解决呢?很简单,在IndexActivity的onNewIntent()方法里再去重新给mCurrentUserAccount赋值就可以了。因为具体的可以参考Activity的不同的启动模式的特点。
 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: