安卓sharepreference能跨进程共享数据吗
答案:1 悬赏:40 手机版
解决时间 2021-03-21 01:13
- 提问者网友:藍了天白赴美
- 2021-03-20 05:33
安卓sharepreference能跨进程共享数据吗
最佳答案
- 五星知识达人网友:鸠书
- 2021-03-20 05:53
使用的SharePreferences
都是使用模式Context.MODE_PRIVATE,这样就不能被其他程序访问到,用不同的模式可以实现跨进程,跨应用获取该文件内容
String content = null;
Context c = null;
try {
c = this.createPackageContext(PREFERENCE_PACKAGE,
Context.CONTEXT_IGNORE_SECURITY);
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.d(TAG, "" + c);
SharedPreferences sh = c.getSharedPreferences(PREFERENCE_NAME, Context.MODE_WORLD_READABLE | Context.MODE_MULTI_PROCESS);
content = sh.getString("tr069token3", null);
在Android 4.0上通过以上方法可以跨进程访问,之前没有加入Context.MODE_MULTI_PROCESS参数,导致不能获取到修改后的数据。在2.3的室内机上不能获取,没有权限。
都是使用模式Context.MODE_PRIVATE,这样就不能被其他程序访问到,用不同的模式可以实现跨进程,跨应用获取该文件内容
String content = null;
Context c = null;
try {
c = this.createPackageContext(PREFERENCE_PACKAGE,
Context.CONTEXT_IGNORE_SECURITY);
} catch (NameNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.d(TAG, "" + c);
SharedPreferences sh = c.getSharedPreferences(PREFERENCE_NAME, Context.MODE_WORLD_READABLE | Context.MODE_MULTI_PROCESS);
content = sh.getString("tr069token3", null);
在Android 4.0上通过以上方法可以跨进程访问,之前没有加入Context.MODE_MULTI_PROCESS参数,导致不能获取到修改后的数据。在2.3的室内机上不能获取,没有权限。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯