SharedPreferences配置文件为XML文件,路径:/data/data/<package name>/shared_prefs目录下
关键代码:
//第一个参数用于指定该文件的名称,第二个参数指定文件的操作模式,共有四种操作模式。
//如果希望生成的xml文件能被其他应用读和写,可以指定Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE权限。
//另外Activity还提供了另一个getPreferences(mode)方法操作SharedPreferences,这个方法默认使用当前类不带包名的类名作为文件的名称。
SharedPreferences perferences = getSharedPreferences("yaku", Context.MODE_PRIVATE);
Editor edit = perferences.edit();//获得编辑器
edit.putString("name", "我是内容");
edit.putInt("age", 20);
edit.commit();//提交内容
获取数据:
SharedPreferences preference = getSharedPreferences("yaku", Context.MODE_PRIVATE);
String nameStr = preference.getString("name", "");//如果取不到值就取值后面的参数
int ageStr = preference.getInt("age", 0);
//其他应用要访问上面应用的preference,首先需要创建上面应用的Context,然后通过Context 访问preference
Context context = createPackageContext("cn.yaku.action", Context.CONTEXT_IGNORE_SECURITY);
SharedPreferences perferences = context.getSharedPreferences("yaku", Context.MODE_WORLD_READABLE);
String name = perferences.getString("name", "");
int age = perferences.getInt("age", 0);
//如果不通过创建Context访问其他应用的preference,也可以以读取xml文件方式直接访问其他应用preference对应的xml文件,如:
File xmlFile = new File("/data/data/<package name>/shared_prefs/yaku.xml");
示例代码:
package com.yaku.SharedPreferences;
import com.yaku.test.R;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
/**
* SharedPerferences的使用
* @author Administrator
*/
public class ShareActivity extends Activity {
private EditText name;
private EditText age;
private Button sure;
private Button recover;
private Button clear;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.sharedperference);
name = (EditText)findViewById(R.id.name);
age = (EditText)findViewById(R.id.age);
sure = (Button)findViewById(R.id.sure);
recover = (Button)findViewById(R.id.recover);
clear = (Button)findViewById(R.id.clear);
//保存信息到yaku.xml文件
sure.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String nameStr = name.getText().toString();
String ageStr = age.getText().toString();
if(!"".equals(nameStr)&&nameStr!=null && !"".equals(ageStr)&&ageStr!=null){
SharedPreferences perferences = getSharedPreferences("yaku", Context.MODE_PRIVATE);
Editor edit = perferences.edit();
edit.putString("name", nameStr);
edit.putInt("age", Integer.parseInt(ageStr));
edit.commit();
Toast.makeText(ShareActivity.this, "OK", 0).show();
}
}
});
//恢复保存的数据
recover.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences preference = getSharedPreferences("yaku", Context.MODE_PRIVATE);
String nameStr = preference.getString("name", "");//如果取不到值就取值后面的参数
int ageStr = preference.getInt("age", 0);
name.setText(nameStr);
age.setText(String.valueOf(ageStr));
}
});
//清除数据
clear.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
name.setText(null);
age.setText(null);
}
});
}
}
分享到:
相关推荐
SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能...
Android数据存储之SharedPreferences,自己根据文档编写的代码,有需要的就下载吧。
Android本地存储SharedPreferences详解 存储位置 SharedPreferences数据保存在: /data /data/<package> /shared_prefs 文件夹下,以XML格式保存,根元素为:。文件名称为获取SharedPreferences实例时传递的參数值。...
Android数据存储——SharedPreferences实现登入记住密码功能。
Jetpack DataStore 是一种改进的新数据存储解决方案,允许使用协议缓冲区存储键值对或类型化对 象。 DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的 一些缺点。 DataStore ...
Android 3种数据保存(SharedPreferences存储 内部文件存储 数据库存储),如项目包有问题请联系我谢谢
Android使用SharedPreferences进行数据存储,缓存ID等数据
android 使用SharedPreferences对数据存储/删除/读取/文件删除
Android使用SharedPreferences和SQLite数据库实现数据存储
android studio 利用SharedPreferences实现自动登录(可以自己选择记住密码和直接登录)
Sharedpreferences存储数据的使用方法_完整Demo_AndroidStudio http://blog.csdn.net/iwanghang
数据持久化就是指将那些内存中的瞬时数据保存到持久化设备中(如手机文件、数据库等),当关机,...SharedPreferences 是使用键值对的方式来存储数据的,使用 SharedPreferences来进行数据持久化要比使用文件方便很多。
利用数据存储的SharedPreferences开发技术,实现了一个简易的登录界面,可以记住登录密码等。
1.掌握SharedPreferences的使用方法; 2.掌握各种文件存储的区别与适用情况; 3.了解SQLite数据库的特点和体系结构; 4.掌握SQLite数据库的建立和操作方法; 5.理解ContentProvider的用途和原理; 6.掌握...
使用SharedPreferences的小项目。
Android项目开发中使用的数据存储方式有:网络存储、sqlite存储、File存储和SharedPreferences存储,四种存储方式对应的Demo别人是NetworkDemo、SqliteDemo、FileDemo和SharedPreferencesDemo,根据应用的场景选择...
SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身...
程序代码 博文链接:https://prettyboy434.iteye.com/blog/724088
Android使用SharedPreferences保存账号密码
Android Studio编写的Android存储示例。其中包括:使用自带的SharedPreferences存取;存储数据到内存;存储数据到SD卡;存储数据到SQLite数据库。