ContentProvider 小结

ContentProvider 小结

概要

ContentProvider是Android提供的四大组件之一, 底层由ActivityManagerService管理(BinderServer).

ContentProvider提供了一种 统一访问资源的接口, 不关心数据的具体存储方式.

可以跨应用(进程)进行 数据共享.

Android中常用的数据存储方式: 网络, SDCard(外部存储), File, Sqlite数据库, SharedPreferences.

ContentSolver使用URI(Uniform Resource Indetifier)定位到特定的ContentPrivider

1. Content URI 定义规则

content://authority/path/#
eg: 
content://com.xxx.providertest.MyContentProvider/user_table/12
说明:
  1. 标准协议头: content://

  2. Authority: 授权信息,访问限定, 用以区别不同的ContentProvider

  3. path: 数据表 eg: user_table

  4. -#-: 数据Id

2. 访问权限控制

  1. 对ContentProvider提供访问权限设置
<provider
    android:name=""         //Provider类路径
    android:authorities=""  // 授权
    android:exported="true" // 外部可见
    android:permission=""   //读写权限标识
    android:readPermission=""   // 读的权限(查询)标识
    android:writePermission=""  // 写(存储,修改)权限标识
    android:grantUriPermission="" //临时权限标识
/>
  1. 对ContentProvider中path的访问权限
<path-permission 
    android:path=""         //路径名称(表名)
    android:pathPrefix=""   //表前缀
    android:pathPattern=""  // 匹配模板
    android:permission=""   // 读写权限标识
    android:writePermission=""  //读权限标识
    android:permission=""       //写权限标识
/> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值