我的项目有3个活动,登录、注册和配置文件。。。所以我想通过SharedPreferences获取注册信息进行登录。。我该怎么做?
将数据保存到共享引用
PreferenceManager.getDefaultSharedPreferences(context)
.edit()
.putString("identifier", data)
.apply();
检索数据
PreferenceManager.getDefaultSharedPreferences(context).getString("identifier", "default_value");
注意,您可以存储和检索不同的数据类型,我展示了一个使用String的示例,但int、double和其他类型的工作方式类似。
您可以使用此类来保存您对整个应用程序的偏好
public class AppSharedPreferences {
public static final String TAG = "AppSharedPreferences";
private static SharedPreferences sharedPref;
private String demo_string = "demo string's key"
public AppSharedPreferences() {
}
public static void init(Context context)
{
if(sharedPref == null)
sharedPref = context.getSharedPreferences(
context.getPackageName(), Activity.MODE_PRIVATE);
}
public static void setDemoString(String demoString) {
Editor prefs = sharedPref.edit();
prefs.putString(demo_string, demoString);
prefs.apply();
}
public static String getDemoString() {
return sharedPref.getString(demo_string, "");
}}
把这个放在你想使用共享首选项的地方:
AppSharedPreferences.init(this);
您可以将其交换为活动或上下文,这取决于您在哪里使用代码。
要设置首选项中的值,请使用以下代码:
AppSharedPreferences.setDemoString("Some Text");
从偏好中获取值:
String text = AppSharedPreferences.getDemoString();