在loginactivity中用sharedpreference保存的用户信息,怎样在其他activity和fragment中读取

loginactivity中的代码

SharedPreferences.Editor editor = getSharedPreferences("token",MODE_PRIVATE).edit();

editor.putString("name",responseData.data.user.getUsername() );


editor.putString("jwt",responseData.data.getJwt());
    editor.commit();

能够成功保存

其他地方读取

SharedPreferences preferences;

preferences = ContextApplication.getAppContext().getSharedPreferences("toke",Context.MODE_PRIVATE);

String token = preferences.getString("jwt","null");
String appId = preferences.getString("name","null");
Log.d("MentalitydataAcitvity:","username========"+appId);
Log.d("MentalitydataAcitvity:","jwt======"+token);

不报错 但是打印的数据为空 怎样解决

3个回答

SharedPreferences.Editor editor = getSharedPreferences("token",MODE_PRIVATE).edit();
preferences = ContextApplication.getAppContext().getSharedPreferences("toke",Context.MODE_PRIVATE);
为什么上面是token,下面变成了toke,
String token = preferences.getString("jwt","null");<-----是null不是"null"

weixin_43883499
小虫酱123 感谢 就是那个文件名的问题 看了好久都看出来 谢谢
3 个月之前 回复

你可以log一下变量是否为空,或者先传入固定值测试,或者删除 ContextApplication.getAppContext()

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问