跨程序提供及获取内容
从别的程序获取数据
通过getContentResolver()方法获得ContentResolver实例
增加数据
ContentValues values = new ContentValues(); values.put("column1", "text"); values.put("column2", 1); getContentResolver().insert(uri, values);
删除数据
getContentResolver().delete(uri, "column2 = ?", new String[] { "1" });
更改数据
ContentValues values = new ContentValues(); values.put("column1", ""); getContentResolver().update(uri, values, "column1 = ? and column2 = ?", new String[] {"text", "1"});
查询数据
Cursor cursor = getContentResolver().query( uri, //uri对应的表 projection, //指定查询的列名 selection, //指定 where 的约束条件 selectionArgs, //为 where 中的占位符提供具体的值 sortOrder); //指定查询结果的排序方式
query()方法参数 | 对应 SQL 部分 | 描述 |
uri | from table_name | 指定查询某个应用程序下的某一张表 |
projection | select column1, column2 | 指定查询的列名 |
selection | where column = value | 指定 where 的约束条件 |
selectionArgs | - | 为 where 中的占位符提供具体的值 |
orderBy | order by column1, olumn2 | 指定查询结果的排序方式 |
遍历 Cursor
查询得到Cursor对象,通过移动游标的位置来遍历 Cursor 的所有行,然后再取出每一行中相应列的数据
if (cursor != null) {while (cursor.moveToNext()) {//当到型循环 String column1 = cursor.getString(cursor.getColumnIndex("column1"));int column2 = cursor.getInt(cursor.getColumnIndex("column2"));}cursor.close();}
创造ContentProvider,给别的程序提供数据
新建 MyProvider 继承自 ContentProvider,重写6个方法
UriMatcher中提供了一个 addURI()方法,1.权限、2.路径、3.自定义代码
当调用 UriMatcher 的 match()方法时,就可以将一个 Uri 对象传入,返回值是某个能够匹配这个 Uri对象所对应的自定义代码,利用这个代码,我们就可以判断出调用方期望访问的是哪张表中的数据了
>MIME 类型
content://com.example.app.provider/table1 --------------------vnd.android.cursor.dir/vnd.com.example.app.provider.table1
content://com.example.app.provider/table1/1-------------------vnd.android.cursor.item/vnd.com.example.app.provider.table1
转载于:https://www.cnblogs.com/cenzhongman/p/6392823.html
跨程序提供及获取内容相关推荐
- 第七章:跨程序共享数据-探究内容提供器
运行时权限 Android 6.0 之后的系统提供了两种权限: 普通权限.例如:访问网络状态.监控开机是否完成等.这种权限会在安装 APP 时询问用户是否同意. 危险权限,也就是说运行时权限,需要在程 ...
- 微信小程序code和其他内容的获取
在之前的一篇文章中谈到了微信小程序code的获取,很多朋友以为是生成code的方式,这里再强调下:不是,一旦点了微信授权弹出框后,这个code就已经提交到微信服务器做完验证了.该程序的原理不是去模拟器 ...
- 如何在程序中解析获取word文档(docx格式)的文本内容
原理 docx格式的word文档其实是一个压缩包,文本内容.格式.图片等是分别存储在不同的文件中的,office通过这些文件还原出我们所看到的word文档.下面以一个简单的示例来说明docx格式. 示 ...
- 第7章 跨程序共享数据,探究
第7章 跨程序共享数据,探究 内容提供器 在上一章中我们学了Android数据持久化的技术,包括文件存储.SharedPreferences存 储.以及数据库存储.不知道你有没有发现,使用这些持久化技 ...
- gatsby_如何使用Gatsby.js来获取内容
gatsby by Dimitri Ivashchuk 由Dimitri Ivashchuk 如何使用Gatsby.js来获取内容 (How to source content with Gatsby ...
- android 内容提供其,Android内容提供者
内容提供程序(Provider)组件从一个应用到其他请求提供数据.通过 ContentResolver 类的方法这样的请求处理.内容提供程序使用不同的方式来存储数据,并且可以将数据存储在数据库中,文件 ...
- jQuery - 获取内容和属性
http://www.runoob.com/jquery/jquery-dom-get.html jQuery - 获取内容和属性 jQuery 拥有可操作 HTML 元素和属性的强大方法. jQue ...
- 微信小程序python解析获取用户手机号_微信小程序获取用户手机号
获取微信用户绑定的手机号,需先调用wx.login接口. 小程序获取code. 后台得到session_key,openid. 组件触发getPhoneNumber 因为需要用户主动触发才能发起获取手 ...
- 小程序云开发添加内容审核和图片审核
小程序云开发添加内容审核和图片审核 本文介绍 对于小程序涉及信息的发布操作情景,小程序官方提供了内容审核 接口,本文是来学习审核接口的使用. 内容的审核有很多的实现方式,本次采用的是小程序自带的云 ...
最新文章
- php转word插件下载不了,不用软件pdf转word的方法
- 开发日记-20190914 关键词 汇编语言王爽版 第五章
- SVD理论以及Python实现
- 【网络安全】2022年第一次靶场渗透实战学习
- mac版lightroom cc_Photoshop问世30周年 Mac和iPad版获重要更新
- python全栈开发要学些什么_如何迅速学习Python 全栈开发?
- oracle 12 sqlplus 使用,oracle 12.2 sqlplus history
- 阿里云TSDB在大数据集群监控中的方案与实战
- 数据分析:为什么说Python比Excel更简单高效 ?
- [脚本编程] 过云盾、D盾各种盾shell
- 计算机系统-电路设计04-全加器的内部电路实现
- Android开发实践:自定义ViewGroup的onLayout()分析
- cocos2d中CCSprite的使用总结 【转】
- 三维交互电子沙盘在消防应急指挥部的一张图建立方案
- Maven 配置与依赖冲突问题
- java通过winrm实现remote powershell
- java 导出word换行_[原创]java导出word的5种方式
- html中dom什么意思,dom属性是什么意思啊 html dom是什么意思,通俗易懂
- JAVA学习笔记(第五章 接口与继承)
- 能将PDF转成PPT图片文字的转换器