1 前言
SharedPreferences和SQLite数据库文件一样,都是应用数据永久保存的方式之一,二者在APP卸载后都会随之删除。但二者不同的地方在于,SharedPreferences仅适用于少数几个简单类型(如int、String)数据的存储,因而使用方式也更简单。
2 保存位置:
2.1 数据保存在文件系统中的位置:
2.2 其中 MyString_Data.xml:键值对 <key,value> 方式
3 使用方式(以String为例)
3.1 MyString_Data.java
public class MyString_Data {
public String value;
private Context context;
public MyString_Data(Context context){
this.context = context;
}
public void save(){//写
//MyString_Data.xml
SharedPreferences shp = context.getSharedPreferences("MyString_Data", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = shp.edit();
editor.putString("backup_version",value);// <key,value>
editor.apply();
}
public String load(){//读
SharedPreferences shp = context.getSharedPreferences("MyString_Data",Context.MODE_PRIVATE);
String v = shp.getString("backup_version","null");
value = v;
return v;
}
}
3.2 Fragment.java或Activity.java
MyString_Data myString_data = new MyString_Data(requireActivity().getApplicationContext());//单例(Activity内括号内仅写getApplicationContext()即可,注意不能传this,否则内存泄漏)
myString_data.value = "此处为你想要存储的String类型数据";
myString_data.save();//写
String version = myString_data.load();//读(给version)