Android组件4——Content Provider详解

314 阅读1分钟

一、 有使用过Content Provider吗?

ContentProvider是android的四大组件之一,它就是用于不同应用之间的数据共享。
因为它能在应用之间提供数据共享,所以它天生就非常适合进程间的通信。它比AIDL操作起来更方便,所以ContentProvider也是一个比较好的跨进程通信的方式。

二、 Android为什么要设计Content Provider这个组件

  1. 可以对数据进行封装,从而提供一个统一的接口
  2. 提供了跨进程数据共享的方式
  3. ContentProvider可以通知共享数据的修改

三、 Content Provider大致要如何使用,别的应用调用时要如何使用?

  1. 数据提供方可能有几种,比如db、sp、mmkv、内存、file、网络等,以db为例
  2. db 创建数据库,插入数据
  3. 实现ContentProvider,创建唯一的表示,创建UriMather
  4. 实现具体的几个方法 onCreate、insert、delete、update、query
  5. AndroidManifest中注册,注意属性事项
  6. 在其他应用AndroidManifest中申明权限
  7. 调用

开源一个content provider demo
androidContentProvider

更详细介绍可以看 # Android必知必会的四大组件 -- ContentProvider篇