Android 不同应用之间共享数据

应用场景:A应用的数据要共享,B应用调用;Android 7.0之前可以使用。

A应用:


//Mode 为自定义数据名称
SharedPreferences share = context.getSharedPreferences("Mode",Context.MODE_WORLD_READABLE);
SharedPreferences.Editor editor = share.edit();
editor.putString("Key", "Value");
editor.commit();
B应用:

 Context context = createPackageContext("com.xxx.xx", Context.CONTEXT_IGNORE_SECURITY);
 SharedPreferences read = context.getSharedPreferences("Mode", Context.MODE_WORLD_READABLE);
 String value = read.getString("Key", "默认值");

getSharedPreferences(name,mode)方法的第一个参数用于指定该文件的名称,名称不用带后缀,后缀会由Android自动加上。方法的第二个参数指定文件的操作模式,共有四种操作模式:
1、Activity.MODE_PRIVATE
默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中,可以使用Activity.MODE_APPEND
2、Activity.MODE_WORLD_READABLE 
表示当前文件可以被其他应用读取,
3、Activity.MODE_WORLD_WRITEABLE 
表示当前文件可以被其他应用写入;如果希望文件被其他应用读和写,可以传入:Activity.MODE_WORLD_READABLE+Activity.MODE_WORLD_WRITEABLE
4、Activity.MODE_APPEND 该模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件

猜你喜欢

转载自blog.csdn.net/shangshanling/article/details/85007196