- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何实现Android应用程序之间数据共享的.doc
如何实现Android应用程序之间数据共享的
一个应用程序可以将自己的数据完全暴露出去,外界更本看不到,也不用看到这个应用程序暴露的数据是如何存储的,或者是使用数据库还是使用文件,还是通过网上获得,这些一切都不重要,重要的是外界可以通过这一套标准及统一的接口和这个程序里的数据打交道,例如:添加(insert)、删除(delete)、查询(query)、修改(update),当然需要一定的权限才可以。如何将应用程序的数据暴露出去??Android提供了ContentProvider,一个程序可以通过实现一个Content provider的抽象接口将自己的数据完全暴露出去,而且Content providers是以类似数据库中表的方式将数据暴露。Content providers存储和检索数据,通过它可以让所有的应用程序访问到,这也是应用程序之间唯一共享数据的方法。要想使应用程序的数据公开化,可通过2种方法:创建一个属于你自己的Content provider或者将你的数据添加到一个已经存在的Content provider中,前提是有相同数据类型并且有写入Content provider的权限。如何通过一套标准及统一的接口获取其他应用程序暴露的数据?Android提供了ContentResolver,外界的程序可以通过ContentResolver接口访问ContentProvider提供的数据。当前篇主要说明,如何获取其它应用程序共享的数据,比如获取Android?手机电话薄中的信息。什么是URI?在学习如何获取ContentResolver前,有个名词是必须了解的:URI。URI是网络资源的定义,在Android中赋予其更广阔的含义,先看个例子,如下:
将其分为A,B,C,D 4个部分:A:标准前缀,用来说明一个Content Provider控制这些数据,无法改变的;B:URI的标识,它定义了是哪个Content Provider提供这些数据。对于第三方应用程序,为了保证URI标识的唯一性,它必须是一个完整的、小写的 类名。这个标识在provider 元素的 authorities属性中说明:provider name=”.TransportationProvider” authorities=”com.example.transportationprovider” . . . C:路径,Content Provider使用这些路径来确定当前需要生什么类型的数据,URI中可能不包括路径,也可能包括多个;D:如果URI中包含,表示需要获取的记录的ID;如果没有ID,就表示返回全部;由于URI通常比较长,而且有时候容易出错,切难以理解。所以,在Android当中定义了一些辅助类,并且定义了一些常量来代替这些长字符串,例如:People.CONTENT_URIContentResolver 介绍说明看完这些介绍,大家一定就明白了,ContentResolver是通过URI来查询ContentProvider中提供的数据。除了URI以外,还必须知道需要获取的数据段的名称,以及此数据段的数据类型。如果你需要获取一个特定的记录,你就必须知道当前记录的ID,也就是URI中D部分。前面也提到了Content providers是以类似数据库中表的方式将数据暴露出去,那么ContentResolver也将采用类似数据库的操作来从Content providers中获取数据。现在简要介绍ContentResolver的主要接口,如下:
?
返回值
函数声明
final Uri
insert(Uri url, ContentValues values)Inserts a row into a table at the given URL.
final int
delete(Uri url, String where, String[] selectionArgs)Deletes row(s) specified by a content URI.
final Cursor
query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder)Query the given URI, returning a Cursor over the result set.
final int
update(Uri uri, ContentValues values, String where, String[] selectionArgs)Update row(s) in a content URI.
看到
您可能关注的文档
- 在线裁判系统阅卷方式研究.doc
- 在经济会上的讲话初稿.doc
- 在药物化学课采用案例教学的进一步探索.doc
- 在重点产业发展战略研讨暨合作交流.doc
- 在隧道显微镜基础上发展起来的各种新型显微镜.doc
- 地价与房价关系的实证研究.doc
- 地价影响因素分析.doc
- 地域性城市设计.doc
- 地域文化视阈下民族民间体育赛事的发展方略与路径选择.doc
- 地基处理施工要点.doc
- 中国开口机行业市场规模及未来投资方向研究报告.pdf
- 中国暖器行业市场规模及未来投资方向研究报告.pdf
- 中国无机硅行业市场规模及未来投资方向研究报告.pdf
- 中国无机油田缓蚀剂行业市场规模及未来投资方向研究报告.pdf
- 中国开式固定台压力机行业市场规模及未来投资方向研究报告.pdf
- 中国开启式电缆接续套管行业市场规模及未来投资方向研究报告.pdf
- 中国开口式零序电流互感器行业市场规模及未来投资方向研究报告.pdf
- 中国开奖型彩票行业市场规模及未来投资方向研究报告.pdf
- 中国开关设备和配电盘设备行业市场规模及未来投资方向研究报告.pdf
- 中国无机玻璃镀膜行业市场规模及未来投资方向研究报告.pdf
文档评论(0)