基于安卓系统的跨进程数据读写方法、装置及存储介质制造方法及图纸

技术编号:26478383 阅读:30 留言:0更新日期:2020-11-25 19:22
本发明专利技术公开了一种基于安卓系统的跨进程数据读写方法、装置及存储介质,针对现有的安卓系统中跨进程数据读写速度慢的问题,通过判断需要跨进程读写的数据的业务进程是否与SharedPreferences处于同一进程,根据判断结果,执行不同的数据读取路径;以业务数据Key前缀路由的方式,尽量将用于存储数据内容的SharedPreferences放在与访问其最频繁的一个进程中,使得读写数据的业务进程和SharedPreferences本身处于同一进程的命中率非常高;从整体上提高了基于安卓系统的APP进行跨进程小数据读写速度。

【技术实现步骤摘要】
基于安卓系统的跨进程数据读写方法、装置及存储介质
本专利技术属于安卓系统数据读写的设计领域,尤其涉及一种基于安卓系统的跨进程数据读写方法、装置及存储介质。
技术介绍
Android系统为了支持小数据的快速读写设计了SharedPreferences存储。SharedPreferences存储以Key和Value的形式,为用户快速存储小数据提供了轻量级的解决方案。在Android7.0版本以前,开发者可以通过在创建SharedPreferences时添加MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE的flag位来支持文件的跨进程存储的读和写。但是因为这种方法非常危险,会造成数据的不同步问题;所以Android7.0开始已经不支持创建SharedPreferences时用MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE的flag位来实现数据的跨进程读写。为了实现跨进程的数据读写问题,某公司提出了在APP主进程中使用一个继承于类ContentProvider的子类Prefere本文档来自技高网...

【技术保护点】
1.一种基于安卓系统的跨进程数据读写方法,其特征在于,包括:/nS1:当服务端接收跨进程操作请求时,读取发起所述跨进程操作请求的业务进程;/nS2:判断所述业务进程是否与SharedPreferences在同一进程中,若是,则直接访问所述SharedPreferences,进行跨进程数据读写;所述SharedPreferences为一支持数据跨进程读写的数据存储空间;/nS3:若否,则创建一中间类对所述SharedPreferences的读写存储进行封装,使所述业务进程通过所述中间类间接访问所述SharedPreferences,进行跨进程数据读写。/n

【技术特征摘要】
20200623 CN 202010579929X1.一种基于安卓系统的跨进程数据读写方法,其特征在于,包括:
S1:当服务端接收跨进程操作请求时,读取发起所述跨进程操作请求的业务进程;
S2:判断所述业务进程是否与SharedPreferences在同一进程中,若是,则直接访问所述SharedPreferences,进行跨进程数据读写;所述SharedPreferences为一支持数据跨进程读写的数据存储空间;
S3:若否,则创建一中间类对所述SharedPreferences的读写存储进行封装,使所述业务进程通过所述中间类间接访问所述SharedPreferences,进行跨进程数据读写。


2.如权利要求1所述的基于安卓系统的跨进程数据读写方法,其特征在于,所述步骤S2进一步包括:
创建一类LocalCacheHelper,为当前进程实例化一LocalCacheHelper对象,所述LocalCacheHelper对象为对当前进程中的SharedPreferences的存储操作的封装;
当业务进程需要访问的数据为当前进程时,直接调用所述LocalCacheHelper对象,快速访问所述SharedPreferences。


3.如权利要求2所述的基于安卓系统的跨进程数据读写方法,其特征在于,所述步骤S3进一步包括:
在APP的主进程中创建一支持跨进程数据读写的类ContentProvider,并创建一继承于所述类ContentProvider的虚类AbstractPreferencesProvider,所述虚类AbstractPreferencesProvider通过当前进程的LocalCacheHelper对象对所述SharedPreferences进行读写操作;
当所述业务进程与所述SharedPreferences不处于同一进程时,所述业务进程通过调用所述虚类AbstractPreferencesProvider的子类的对象实例,访问所述SharedPreferences,实现跨进程数据读写。


4.如权利要求1至3中任意一项所述的基于安卓系统的跨进程数据读写方法,其特征在于,所述步骤S1之前还包括:
在APP的主进程及业务进程中各设置一SharedPreferences,存储于所述SharedPreferences中的数据以Key+value的形式存储;
当所述数据在业务进程中被频繁读写时,将所述数据存储于所述业务进程中的SharedPreferences,并且在所述数据...

【专利技术属性】
技术研发人员:胡斌陈庭财
申请(专利权)人:北京智慧章鱼科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1