四大组件(4)-ContentProvider-创新互联

一、功能

创新互联建站专注于武强企业网站建设,成都响应式网站建设公司,商城网站开发。武强网站建设公司,为武强等地区提供建站服务。全流程按需设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

应用之间共享数据

常见使用场景:通讯录 短信等

二、使用步骤

1.提供数据App - 定义ContentProvider

继承ContentProvider 复写相关初始化和查询方法,同时在Manifest中声明

android:name=“xxx”

android:authorities=“testProvider” //访问路径名称

android:enabled=”true“

android:exported=“true”/>

2.获取数据app 使用ContentResolver获取数据

Uri uri = Uri.parse(“content://xxx”);

ContentResolver contentResolver = getContentResolver();

Curor cursor = contentResolver.query(uri,null,”query_where”,null,null);

三、原理

匿名共享内存(ASM) - binder机制

假设A应用访问B应用数据

1.A发送消息给AMS,想要访问B中的CP。

2.AMS检查发现,B中的CP没启动过,为此新开一个进程,启动B,然后获取到B启动的CP,把CP的代理对象返回给A。

3.A拿到CP的代理对象,也就是IContentProvider,就调用它的增删改查4个方法了,接下来就是使用ASM来传输数据或者修改数据了

参考:https://www.jianshu.com/p/c2ac0a54cdaa

四、扩展

Binder机制

https://www.jianshu.com/p/47731149c93c

AIDI使用

https://www.jianshu.com/p/29999c1a93cd

https://www.jianshu.com/p/23612b2cce30

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:四大组件(4)-ContentProvider-创新互联
网页地址:http://pwwzsj.com/article/dhisjh.html