android SharedPreferences 多进程间数据共享
2016-02-25 18:15
274 查看
前提:
一:数据共享方式
同进程内 :SharedPreferences,SQLlite,File,Bundle,Memory,网络。
跨进程:Contentprovider , File,shareperference
1:同包(包名相同,但不同进程不同)
eg:
后台独立进程2中读取应用shareperference数据记录方式。
(1)参数说明:
Context有个createPackageContext方法,可以创建另外一个包的上下文,这个实例不同于它本身的Context实例,但是功能是一样的。
这个方法有两个参数:
1:packageName 包名,要得到Context的包名
2:flags 标志位,
CONTEXT_INCLUDE_CODE和CONTEXT_IGNORE_SECURITY。
CONTEXT_INCLUDE_CODE:应用内代码支撑。
CONTEXT_IGNORE_SECURITY:忽略安全警告,如果不加这个标志的话,有些功能是用不了的,会出现安全警告。
一:数据共享方式
同进程内 :SharedPreferences,SQLlite,File,Bundle,Memory,网络。
跨进程:Contentprovider , File,shareperference
1:同包(包名相同,但不同进程不同)
eg:
<service android:name="进程1" /> <service android:name="进程2" android:process=":other"/>
后台独立进程2中读取应用shareperference数据记录方式。
/** * 获取当前引用的进程名,对于权限给与最大化,使之可以共享数据 */ Context c = AppApplication.getInstance().createPackageContext(AppApplication.getInstance().getPackageName(), Context.CONTEXT_INCLUDE_CODE | Context.CONTEXT_IGNORE_SECURITY); SharedPreferences mPreference = c.getSharedPreferences(PREFERENCE,Context.MODE_WORLD_READABLE|Context.MODE_MULTI_PROCESS);
(1)参数说明:
Context有个createPackageContext方法,可以创建另外一个包的上下文,这个实例不同于它本身的Context实例,但是功能是一样的。
这个方法有两个参数:
1:packageName 包名,要得到Context的包名
2:flags 标志位,
CONTEXT_INCLUDE_CODE和CONTEXT_IGNORE_SECURITY。
CONTEXT_INCLUDE_CODE:应用内代码支撑。
CONTEXT_IGNORE_SECURITY:忽略安全警告,如果不加这个标志的话,有些功能是用不了的,会出现安全警告。
相关文章推荐
- android中的AIDL学习笔记
- Android客户端内置内存工具进行崩溃定位的实践经验
- 推荐提升 Android 性能的建议
- Android平台类加载流程源码分析
- Android_通过ContentObserver监听短信数据变化
- Android开发环境搭建
- Android 如何修改jar文件
- Android添加系统service
- Android 5.0 ART GC 对比 Android 4.x Dalvik GC
- Android ART GC之GrowForUtilization的分析
- [转]Android NDK几点回调方式
- Java回调机制(以Android事件监听器为例)
- Android数据库框架-Archiver(LiteOrm)的使用
- Android中Scroller的应用
- 安卓实现个性彩色好看的二维码
- android简单实例--------普通菜单optionMenu,上下文菜单ContextMenu,弹出式菜单的使用PopuMenu(三)
- Android开源项目分包方式学习(eoe、oschina、github)
- Android-通知Notification全解析
- 【Android】mac osx EI capitan svn更新
- android 项目凡信的学习(一)