`
wenzongliang
  • 浏览: 449378 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

preference

 
阅读更多

1.getSharePerences(int mode);

     该方法是获取一个Activity默认配置,文件名为:该Activity的类名(不带包名)

2. PreferenceManager.getDefaultSharedPreferences(this)

     这个用来获取整个APP的默认配置,文件名为:应用包名_preferences.xml

3.getSharedPreferences("name", MODE_WORLD_WRITEABLE)

     自定义的配置文件名,

 

 

如果访问其他应用中的Preference,前提条件是:该preference创建时指定了Context.MODE_WORLD_READABLE或者Context.MODE_WORLD_WRITEABLE权限。如:有个<package name>为cn.yang.action的应用使用下面语句创建了preference。

getSharedPreferences("TEST", Context.MODE_WORLD_READABLE);

其他应用要访问上面应用的preference,首先需要创建上面应用的Context,然后通过Context 访问preference ,访问preference时会在应用所在包下的shared_prefs目录找到preference :

Context otherAppsContext = createPackageContext("cn.yang.action", Context.CONTEXT_IGNORE_SECURITY);

SharedPreferences sharedPreferences = otherAppsContext.getSharedPreferences("TEST", Context.MODE_WORLD_READABLE);

String name = sharedPreferences.getString("name", "");

int age = sharedPreferences.getInt("sex", "");

 

如果不通过创建Context访问其他应用的preference,也可以以读取xml文件方式直接访问其他应用preference对应的xml文件,如: 

File xmlFile = new File(“/data/data/<package name>/shared_prefs/itcast.xml”);//<package name>应替换成应用的包名。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics