欢迎来到163文库! | 帮助中心 精品课件PPT、教案、教学设计、试题试卷、教学素材分享与下载!
163文库
全部分类
  • 办公、行业>
  • 幼教>
  • 小学>
  • 初中>
  • 高中>
  • 中职>
  • 大学>
  • 各类题库>
  • ImageVerifierCode 换一换
    首页 163文库 > 资源分类 > PPTX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《Android程序设计教程》课件第八章 ContentProvider数据共享.pptx

    • 文档编号:7647955       资源大小:525.23KB        全文页数:21页
    • 资源格式: PPTX        下载积分:15文币     交易提醒:下载本文档,15文币将自动转入上传用户(momomo)的账号。
    微信登录下载
    快捷注册下载 游客一键下载
    账号登录下载
    二维码
    微信扫一扫登录
    下载资源需要15文币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    优惠套餐(点此详情)
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、试题类文档,标题没说有答案的,则无答案。带答案试题资料的主观题可能无答案。PPT文档的音视频可能无法播放。请谨慎下单,否则不予退换。
    3、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者搜狗浏览器、谷歌浏览器下载即可。。

    《Android程序设计教程》课件第八章 ContentProvider数据共享.pptx

    1、让IT教学更简单,让IT学习更有效Android程序设计教程第八章 ContentProvider数据共享目录 8.1 ContentProvider简介 8.1.1 ContentProvider类 8.1.2 ContentResolver类 8.2 开发ContentProvider程序 8.2.1编写ContentProvider子类 8.2.2 注册ContentProvider 8.2.3 使用ContentProvider 8.3 操作系统的ContentProvider 8.3.1 管理联系人 8.3.2 管理多媒体 8.4 ContentObserver学习目标 了解Cont

    2、entProvider类和ContentResolver类 能够开发ContentProvider程序 能够操作系统的ContentProvider 了解ContentObserver类8.1 ContentProvider简介 ContentProvider是Android系统的四大组件之一,是不同应用程序之间进行数据交换的标准API,也是所有应用程序之间数据存储和检索的一个桥梁,其作用是使各个应用程序之间实现数据共享。它以Uri的形式对外提供数据,允许其他应用操作本应用程序的数据,其他应用通过ContentResolver来访问共享的数据。8.1.1 ContentProvider类 Co

    3、ntentProvider与Activity、Service、BroadcastReceiver类似,都是Android应用的四大组件之一,需要在AndroidManifest.xml配置文件中进行配置。在ContentProvider类的增、删、改、查操作方法中,都用到类型为Uri的参数,该参数是ContentProvider对外提供的一个自身数据集的唯一标识。当一个ContentProvider管理多个数据集时,该ContentProvider将会为每个数据集分配一个独立且唯一的Uri。Uri的语法格式如下:content:/数据路径/标识ID(可选)其中,“content:/”是Cont

    4、entProvider规定的协议,用来标识ContentProvider所管理的scheam,是一个标准的前缀,不能被修改;“数据路径”用于查找所要操作的ContentProvider;“标识ID”是可选的,标识不同数据资源,当访问不同资源时,该ID是动态改变的。Android系统提供了UriMatcher工具类对Uri进行匹配判断,该工具类提供了以下两个常用的方法:void addURI(String authority,String path,int code):用于注册Uri,其中参数authority和path组合成一个Uri,而参数code代表Uri对应的标识符;int match(

    5、Uri uri):根据前面注册的Uri判断指定的Uri对应的标识符,如果找不到匹配的标识码,则返回-1.8.1.2 ContentResolver类 ContentProvider类中共享的数据不能被Android应用程序直接访问,而是通过操作ContentResolver类来间接操作ContentProvider中的数据。ContentResolver是内容解析器,提供了对ContentProvider数据进行查询、插入、修改和删除等操作方法。8.2 开发ContentProvider程序 开发ContentProvider程序的步骤如下:(1)创建一个ContentProvider子类,并

    6、实现query()、insert()、update()和delete()等方法。(2)在AndroidManifest.xml配置文件中注册ContentProvider,并指定android:authorities属性(一般自动注册)。(3)使用ContentProvider,Activity和Service等组件都可以获取ContentProvider对象,并调用该对象相应的方法进行操作。8.2.1编写ContentProvider子类 新建一个Android项目,在Java源文件夹上右击,选择NewOtherContent Provider选项,弹出如图8.1所示对话框,在Class N

    7、ame文本框中输入ContentProvider子类的类名,在URI Authorities文本框中输入数据路径。8.2.2 注册ContentProvider 在AndroidManifest.xml配置文件中注册ContentProvider,只需在元素中添加子元素即可,其示例代码如下。8.2.3 使用ContentProvider(1)首先需要修改相应的XML布局文件(2)修改MainActivity.java文件8.3 操作系统的ContentProvider Android系统本身提供了大量的ContentProvider,例如联系人信息,系统的多媒体信息,系统短信等,程序员自己开发

    8、的Android应用程序时,可以通过ContentResolver来调用系统ContentProvider所提供的query()、insert()、update()和delete()方法,如此即可对Android内部数据进行操作。8.3.1 管理联系人 Android系统用于管理联系人的ContentProvider的Uri有以下三种:ContactsContract.Contacts.CONTENT_URI:管理联系人的Uri;ContactsContract.CommonDataKinds.Phone.CONTENT_URI:管理联系人的电话Uri;ContactsContract.Com

    9、monDataKinds.Email.CONTENT_URI:管理联系人的E-mail的Uri。8.3.2 管理多媒体Android系统为多媒体提供了相应的ContentProvider的Uri,具体如下所示:MediaStore.Audio.Media.EXTERNAL_CONTENT_URI:存储在外部存储(SD卡)上的音频文件内容的ContentProvider的Uri。MediaStore.Audio.Media.INTERNAL_CONTENT_URI:存储在手机内部存储器上的音频文件内容的ContentProvider的Uri。MediaStore.Images.Media.EXT

    10、ERNAL_CONTENT_URI:存储在外部存储器(SD卡)上的图片文件内容的ContentProvider的Uri。MediaStore.Images.Media.INTERNAL_CONTENT_URI:存储在手机内部存储器上的图片文件内容的ContentProvider的uri。MediaStore.Video.Media.EXTERNAL_CONTENT_URI:存储在外部存储器(SD卡)上的视频文件内容的ContentProvider的Uri。MediaStore.Video.Media.INTERNAL_CONTENT_URI:存储在手机内部存储器上的视频文件内容的Content

    11、Provider的Uri。8.4 ContentObserver ContentObserver(内容观察者)的目的是观察(捕获)特定Uri引起的数据库变化,继而做出一些相应的处理。它类似于数据库技术中的触发器,当ContentObserver所观察的Uri发生变化时,便会触发ContentObserver的onChange()方法。触发器分为表触发器和行触发器,相应的ContentObserver也分为表ContentObserver和行ContentObserver,当然这是与它所监听的Uri MIME Type有关。ContentObserver的两个常用方法,具体如下所示:ContentObserver(Handler handler):构造方法,所有ContentObserver的派生类都需要调用该构造方法,参数是Handler对象,可以是主线程Handler(这时候可以更新UI),也可以是任何Handler对象。void onChange(boolean selfChange):观察到Uri发生变化时,回调该方法去处理,所有的ContentObserver的派生类都需要调用该方法去处理数据。谢谢


    注意事项

    本文(《Android程序设计教程》课件第八章 ContentProvider数据共享.pptx)为本站会员(momomo)主动上传,其收益全归该用户,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!




    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库