第十单元 ContentProvider内容提供者的使用

ContentProvider 的使用

  • ContentProvider 的介绍和使用
    ContentProvider介绍
    ContentProvider项目中应用
    ContentProvider机制
  • 进程内数据共享
    自定义ContentProvider
  • 进程间数据共享
    进程间ContentProvider增删改查
  • 自定义权限
    权限是什么
    自定义权限使用

ContentProvider 的介绍和使用

导入注解的包
implementation ‘androidx.annotation:annotation:+’

ContentProvider介绍

1.ContentProvider内容提供者(四大组件之一)主要用于在不同的应用程序之间实现数据共享的功能。
2.技能get点:
(1)访问系统自带的内容提供者(******)
手机联系人/音频/视频/图库/短信/系统设置
(2)自己写内容提供者
3.三个重点
(1) contentProvider 内容提供者
(2) contentResolve 内容解析者
(3) uri 地址
可以简单的理解为:
内容提供者提供一个地址,内容解析者把uri解析一下,去指向提供者的地址.

自定义ContentProvider

一,什么是自定义内容提供者
谈到内容提供者,大家就应该想到提供方和索要方,现在,我们想要做提供方,别人来访问我们的数据库,那我们就需要自定义内容提供者了。
二.思路
1.提供方:ContentProvider
(1)创建数据库,自定义类继承SQLiteOpenHelper
(2)自定义内容提供者类,继承ContentProvider,重写insert/delete/update/query方法,向外界提供方法
(3)清单文件中注册内容提供者

2.索要方:ContentResolver
(1)通过Context的getContentResolver方法获得ContentResolver对象
(2)确定uri
(3)调用insert/delete/update/query方法访问数据库

三.提供者代码:创建my_contentprovider (新建的moudle)
(1)自定义类继承SQLiteOpenHelper
在这里插入图片描述
(2)自定义内容提供者类,继承ContentProvider
重写其他的方法
在这里插入图片描述
(3)清单文件中注册内容提供者
在这里插入图片描述

四.内容索要方代码
(1)获取ContentResolver直接获取
在这里插入图片描述
在这里插入图片描述

进程间数据共享

进程间ContentProvider增删改查

自定义权限

权限是用于暴露出去的组件,提高安全性

自定义权限使用

(1)内容提供方的清单文件
在这里插入图片描述
(2)内容解析方清单文件添加权限
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值