版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、整个应用程序数据源,ContentProvider,目录,1,数据孔刘2,系统上的ContentProvider 3,自定义ContentProvider 4,从ContentProvider接收数据,数据孔刘,anant,用于在联系人数据、数据孔刘和应用程序之间共享数据,Android提供了标准API,用于徐璐在其他应用程序之间共享数据。如果应用程序要提供数据,请通过Contentprovider提供的其他应用程序ContentResolver工作注意:ContentProvider必须在AndroidManifest.xml中注册。无论应用程序是否启动,都可以工作,数据孔刘标准和结构是不需
2、要在应用程序之间共享数据的标准,ContentProvider以Uri形式提供数据,其他应用程序使用ContentResolver访问根据Uri指定的数据。ContentProvider是单实例模式,当多个ContentResolver请求数据时,将由同一CP操纵。ContentProvider、ContentResolver、content resolver、content resolver、uri、Uri、content provider和content esolverContentResolver充当Android系统内的http客户端,可以向指定的Uri发送请求(实际上是调用Conte
3、ntResolver的方法)。此请求最终委托处理ContentProvider,以处理“网站”(即ContentProvider)内部数据。使用ContentProvider,1,定义自己的类继承ContentProvider类boolean oncreate () uri insert (uri,values) int delete (uri,)在中配置标签。Android:name属性:ContentProvider的类名android:authorities属性:用于访问ContentProvider的名称3,其他应用程序使用ContentResolver来访问ContentProvid
4、er、统一资源标识符(URI)和Android提供的ContentProvider包含在vider包中。分为四个部分:a、b、c和d。(如下图所示)主要分为三部分。scheme(协议),authority and path A部分:表示这是由ContentProvider控制数据的Android内容URI,该部分是固定格式,不能更改。b部分:是URI的授权部分,是用于查找ContentProvider的唯一标识符。格式通常是自定义ContentProvider类的全限定名称,注册时需要格式,如com . Alex Zhou . provider . note provid
5、er c部分和d部分。是每个ContentProvider内的路径部分,c和D部分称为路径片段,c部分指向对象集合,而表格的名称(例如/notes表示注解集合)D部分通常指向特定记录。例如:/notes/1表示id为1的注释,如果未指定d部分,则返回整个记录。URI,例如,以下是系统的某些URI:content :/media/internal/images)content :/Contacts/people/5(联系人信息中ID为5的联系人记录)content 3360ContentResolver将insert (Uri URL,contentvalues)在Uri中相应的ContentP
6、rovider中显示values的数据delete(Uri url,String where)与String selectionArgs(字符串选择)Uri对应的ContentProvider中的where提交匹配的数据update (uri URL、content values、string where、String selectionars)这些方法中的每个方法都从ContentProvider调用相应的方法以返回结果。使用ContentResolver,projection此参数告知提供程序要返回的内容(列Column),使用null返回提供程序的所有内容(列Column)。Select
7、ion,设定SQL叙述句中where的对应条件。Null表示不执行筛选。如果在第三个参数内,则selectionArgs与第三个参数一起工作。SelectionArgs写入的数据是否会被替换?即可从workspace页面中移除物件。SortOrder,与SQL语句中的Order by相对应的排序标准。要按ID的降序对结果排序,请使用Android . provider . contacts contract . contacts . _ ID desc、使用content provider和content resolver . update(words . word . down,new St
8、ringword);content resolver . query(words . word . dict _ content _ uri,null,word=?newStringkey,null);获取系统的CP的数据。Android系统提供应用程序的一些开放系统数据。当然也是采用CP的形式。通过ContentResolver访问系统CP的步骤:调用调用Activity的ContentResolver CR对象调用CR中的insert、delete、update、query方法获取系统CP提供的数据注意:要获取系统CP提供的数据,请参阅该CP的Uri使用CP管理联系人,在Android系统
9、上使用Contacts应用程序管理联系人,并公开CP。此CP支持以下Uri:contacts contract . contacts . content _ Uri:管理人员的uri contactss mondatkinds . phone . content _ Uri:管理人员电话的Uri contactCommonDa TaKinds。Email.CONTENT_Uri:管理联系人电子邮件的URI,使用CP管理多媒体内容的URI,Android提供相机程序,将照片、视频和用户的多媒体信息全部保存在固定位置并提供CP。此CP支持以下Uri:mediastore
10、. audio . media . external _ content _ uri mediastore . audio . media . internal _ content _ uri mediastore . images . media2、用户ContentProvider 3必须在AndroidManifest.xml文件中注册,并且UriMatcher工具类void addURI(authority、path、ContentProvider确定匹配的Uri) parseId(uri)/用于解析指定uri中包含的Id的值uri=uri . parse(com . yyyz . l
11、esson/people/10)长people 最后,personid为:12,uriMatcher主要用于匹配Uri 1,void adduri (string authority,string path,string code)/将Uri设置为UriCode是与uri相对应的标识码,2,int match (uri uri uri)/前面注册的uri用于根据uri确定与Uri相对应的标识码,如果找不到,则为-1uri matcher=new Uri matcher(Uri matchermatcher . adduri(content :/org . crazyit . providers
12、 . dict provider,words,1) matcher.adduri (content:)/返回标识码2。插入数据insert,public uri insert (uri uri,contentvalues)/数据库实例SQLite database db=dbopen helper . getreable database(/插入数据并返回行id long rowid=db.insert (dict,words.word. _ id,values)。/如果插入成功,请在Uri if(rowId0) /现有Uri后添加Id数据Uri word Uri=contenturis .
13、withsappendedid(Uri,rowId)。/通知数据是getcontext()。getcontentresolver()。notify change (worduri,null);Return wordUriReturn null,删除数据delete,public int delete (uri uri,string selection,string selection args)SQLite database db=db open helper . ggr/记录删除的记录数int num=0;/与uri匹配。switch(matcher . match(uri)case words 3360 num=db . delete(dict,selection,selection args);BreakCase WORD: /需要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安顺市2025贵州安顺职业技术学院招聘授薪员额制人员笔试历年参考题库典型考点附带答案详解
- 宁波市2025浙江宁波市大数据发展管理局直属事业单位招聘事业编制工作人员1名笔试历年参考题库典型考点附带答案详解
- 类器官药物作用机制解析
- 海洋牧场废弃物回收处理方案
- 公司固定资产台账建设方案
- 大体积混凝土浇筑工程施工组织方案
- 防火建筑洞口封堵验收方案
- 美国公立中学汉语教育:现状、挑战与展望
- 住房保障项目建筑设计方案
- 网页翻译视域下中国英语的多维度探究与展望
- 城市污水管网沿线绿化与恢复方案
- 2025-2026学年外研版(三起)(2024)小学英语三年级上册教学计划及进度表
- 中国血脂管理指南2025版精要
- 方太电烤箱KQD50F-C2说明书
- DB11∕T 2210-2024 城市综合管廊数据规范
- 2025至2030年中国卡纸包装盒行业投资前景及策略咨询研究报告
- 【公开课】巴西+课件-2024-2025学年七年级地理下学期人教版
- 虚拟仿真实验室施工方案
- DG∕TJ 08-2188-2015 应急避难场所设计规范
- 2025公司登记管理实施新规内容解读课件
- 民族团结先进班集体事迹材料7篇
评论
0/150
提交评论