博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android authorities 获取_挖穿Android第三十九天
阅读量:5255 次
发布时间:2019-06-14

本文共 783 字,大约阅读时间需要 2 分钟。

d9e095817d55fa598a9285aa1b08a18e.png

为什么需要内容提供者

回顾数据库知识: [1]定义一个类继承SqliteOpenHelper [2]想要操作数据库必须获取一个SqliteDatabase对象 [3]chmod修改文件的权限 实际应用非root手机是没有办法操作/data/data/目录内容提供者可以把私有的数据库里面的内容对外提供。不需要修改文件的权限

实现内容提供者步骤

注意[0]内容提供者提供数据,内容解析者访问数据[1]写一个类继承ContentProvider[2]去清单文件里面注册 注意:API-18开始 android:exported 默认值是false 需要改为true[3]给ContentProvider添加一个authorities[4]在Provider里面添加一个UriMatch类 用来匹配传进来的Uri地址[5]访问方通过调用ContentReceiver来访问ContentProvider

备份短信案例

sms表: address:发送人号码 date: 发送时间 read: 已读未读 0代表未读 1代表已读 body: 短信内容 权限:  备份: try { // [1]获取一个XmlSerializer对象生成XML文件 XmlSerializer serializer = Xml.newSerializer(); // [2]指定存储路径 FileOutputStream fops = new FileOutputStream(Environment.getExternalStorageDirectory().getPath() + "/sms.xml"); // [3]设置输出流 serializer.setOutput(fops, "utf-8"); // [4]文档开始 serializer.startDocument("utf-8

转载地址:http://ueeav.baihongyu.com/

你可能感兴趣的文章
03 线程池
查看>>
手机验证码执行流程
查看>>
设计模式课程 设计模式精讲 2-2 UML类图讲解
查看>>
Silverlight 的菜单控件。(不是 Toolkit的)
查看>>
jquery的contains方法
查看>>
linux后台运行和关闭SSH运行,查看后台任务
查看>>
桥接模式-Bridge(Java实现)
查看>>
303. Range Sum Query - Immutable
查看>>
C# Dynamic通用反序列化Json类型并遍历属性比较
查看>>
前台freemark获取后台的值
查看>>
Spring-hibernate整合
查看>>
c++ map
查看>>
exit和return的区别
查看>>
Django 相关
查看>>
Python(软件目录结构规范)
查看>>
codeforces水题100道 第二十二题 Codeforces Beta Round #89 (Div. 2) A. String Task (strings)
查看>>
c++||template
查看>>
条件断点 符号断点
查看>>
.net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串------(转)...
查看>>
python的多行注释
查看>>