1 / 67
文档名称:

安卓高级应用 - 多媒体和service.doc

格式:doc   大小:937KB   页数:67页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

安卓高级应用 - 多媒体和service.doc

上传人:colindocx 2016/9/25 文件大小:937 KB

下载得到文件列表

安卓高级应用 - 多媒体和service.doc

相关文档

文档介绍

文档介绍:第六章安卓高级应用在Android中,熟练使用4大组件,对理解Andriod程序,开发高级功能有着至关重要的作用。本章将会逐一讲解Activity以外的3大组件:ContentProvider,BroadcastReceiver和Service的原理及应用,并且介绍以它们为基础开发的多媒体和电话短信等系统应用。,用于保存和检索数据,是Android系统中不同应用程序之间共享数据的接口。Android系统中对一些常见的公用数据提供了ContentProvider接口,例如视频,音频,图像,个人通信信息等,。若开发着想将自己的程序的数据公开给其他应用程序使用,有两种方法:一种是定义自己的ContentProvider子类,另一种是将当前的数据添加到已有的ContentProvider中,我们下面主要讨论第一种情况。,需要2个步骤:1)lassMyProviderextendsContentProvider{publicbooleanonCreate(){}publicUriinsert(Uriuri,ContentValuesvalues){}publicintdelete(Uriuri,Stringselection,String[]selectionArgs){}publicintupdate(Uriuri,ContentValuesvalues,Stringselection,String[]selectionArgs){}ursorquery(Uriuri,String[]projection,Stringselection,String[]selectionArgs,StringsortOrder){}publicStringgetType(Uriuri){}}这其中除了常用的增删改查方法外,onCreate方法用于启动时初始化ContentProvider,getType方法用于返回Uri指定的ContentProvider中的数据的MIME类型。2)在Manifest文件中注册Provider<providerandroid:authorities=""android:name=""/>为了能让其他应用找到该ContentProvider,ContentProvider采用了authorities(主机名/域名)对它进行唯一标识,你可以把ContentProvider看作是一个网站,authorities就是他的域名。URI介绍ContentProvider通过URI来共享数据。URI是一个通用资源标识符,它的构成如图6-1所示:图6-1URI的组成从上图可见,一般URI由4部分构成:1)sheme:无法改变的标准前缀2)主机名或authority:ContentProvider的唯一标示,在Manifes中声明3)路径:可以理解为要操作的数据中表的名字4)ID:需要获取的记录的ID,如果没有则表示返回全部记录UriMatcherAndroid系统提供了UriMatcher类来对URI进行匹配。使用步骤如下:1)首先创建UriMatcher类2)然后通过addURI方法增加需要匹配的路径,并给每个路径标记一个匹配码3)最后通过match方法进行匹配,返回匹配码代码片段如下:privatestaticUriMatchermatcher=newUriMatcher();privatestaticfinalintCONTACTS=1;//匹配码1privatestaticfinalintCONTACT=2;//匹配码2privatestaticfinalStringTABLENAME="person";static{("","person",CONTACTS);("","person/#",CONTACT);}***@Overridepublicintdelete(Uriuri,Stringselection,String[]selectionArgs){switch((uri)){caseCONTACTS://执行相应操作caseCONTACT://执行相应操作de