无法读取SharedPreferences变量中的数据可能有以下几个原因:
getSharedPreferences()
方法;如果在其他类中,需要提供一个有效的上下文,如context.getSharedPreferences()
。MODE_PRIVATE
,那么在其他地方也应该使用相同的模式。getString()
方法。commit()
或apply()
方法。这两个方法都会将数据写入SharedPreferences,但commit()
是同步的,而apply()
是异步的。要解决这个问题,请检查上述原因并相应地进行调整。下面是一个简单的示例,展示了如何在Activity中存储和读取SharedPreferences数据:
// 存储数据
SharedPreferences sharedPreferences = getSharedPreferences("my_prefs", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("key_name", "value");
editor.commit();
// 读取数据
SharedPreferences sharedPreferences = getSharedPreferences("my_prefs", MODE_PRIVATE);
String value = sharedPreferences.getString("key_name", "default_value");
领取专属 10元无门槛券
手把手带您无忧上云