1.首先是有Context的情况。
在/data/data/<package>/shared_pref/目录下创建一个以name命名的xml文件,mode文件为模式存储偏好
public class ShareService {
public static void login(Context context,String uname,String upwd){
SharedPreferences sp=context.getSharedPreferences("data",context.MODE_PRIVATE);
Editor ed=sp.edit();
ed.putString("uname", uname);
ed.putString("upwd", upwd);
//测试
ed.putBoolean("boolean", true);
ed.putFloat("float", 123f);
ed.putInt("int", 1);
ed.putLong("long", 2);
//类似于事务,保持同时提交成功
ed.commit();
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
inin();
SharedPreferences sp = getSharedPreferences("data",MODE_PRIVATE);
String una=sp.getString("uname", "");
account.setText(una);
Log.i("MainActivity", "unmae---->"+una);
String up=sp.getString("upwd", "");
passwd.setText(up);
Log.i("MainActivity", "up--->"+up);
}
即可获取name.xml中的值
各个不同类型的获取方法
sp.getBoolean("boolean",false );
sp.getFloat("key",0f );
sp.getInt("key",0);
sp.getLong("key", 0);
sp.getString("key","");
2.没有Context情况,如在点击事件中实现的话,不要Context对象直接getSharedPreferences即可。