教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 高中教育 >

基于Android平台的音乐播放器的设计与实现(4)

来源:网络收集 时间:2026-01-16
导读: String[]selectionArgs, StringgroupBy,Stringhaving,StringorderBy) 修改记录 执行一条SQL语句 删除记录update(Stringtable,ContentValuevalues,StringexecSQL(Stringsql)delete(Stringtable,StringwhereClause,St

String[]selectionArgs,

StringgroupBy,Stringhaving,StringorderBy)

修改记录

执行一条SQL语句

删除记录update(Stringtable,ContentValuevalues,StringexecSQL(Stringsql)delete(Stringtable,StringwhereClause,String[]whereArgs)关闭数据库

(2)SharedPreferencesClose()

该方式属于一种轻量级的存储方式,主要用于保存一些常用的配置,比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState,保存一般使用SharedPreferences完成,它提供了Android平台常规的长整型(Long)、整型(Int)、字符串型(String)的保存。SharedPreferences的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<>/shared_prefs目录下。

(3)File存储方式

顾名思义,File存储即文件方式存储,可以文件的形式将数据保存在设备中。保存的文件类型主要有PDF文件、文本文件、图片以及音视频文件等。此外,Android还提供了读写文件的方法,openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。

(4)网络存储

一款音乐播放器的设计文档。可以用作毕业设计哦

需要与Android网络数据包打交道。Android的网络存储使用HTTP协议,Android网络应用就相当于一个浏览器。由于Android的应用是使用Java来开发的,所以网络应用使用的也是J2SE的包。Android如何与服务器交互数据?首先可以建立一个WEB应用,在WEB应用的相关请求处理中接收Andorid提交的数据、返回XML数据或JSON数据。Android发送相应的请求并接收服务相应的数据。这就是Android与WEB应用的数据交互。

Android发送请求和获取数据如下:

Stringpath="/images/opensourceproject.gif";

URLurl=newURL(path);

HttpURLConnectionconn=(HttpURLConnection)url.openConnection();

conn.setConnectTimeout(6*1000);

InputStreaminStream=conn.getInputStream();

Android的四种数据存储方式则让应用开发者可以轻松方便的进行程序编写和数据的访问。

2.5Intent机制

Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。

Intent属性的设置,包括以下几点:(以下为XML中定义,当然也可以通过Intent类的方法来获取和设置)

(1)Action,也就是要执行的动作。SDK中定义了一些标准的动作,包括如下表2.4所示。

表2.4Action动作onstant

ACTION_CALL

ACTION_EDIT

ACTION_MAI

ACTION_SYN

ACTION_BATT

ERY_LOW

ACTION_HEAbroadcastreceiverAheadsethasbeenpluggedintothedevice,orunpluggedTargetactivityactivityactivityactivitybroadcastreceivercomponentActionInitiateaphonecall.Displaydatafortheusertoedit.Startupastheinitialactivityofatask,withnodatainputSynchronizedataonaserverwithdataonthemobiledevicAwarningthatthebatteryislow.

一款音乐播放器的设计文档。可以用作毕业设计哦

DSET_PLUG

ACTION_SCRE

EN_ON

ACTION_TIME

ZONE_CHANGbroadcastreceiverbroadcastreceiverfromit.Thescreenhasbeenturnedon.Thesettingforthetimezonehaschanged.

当然,也可以自定义动作(自定义的动作在使用时,需要加上包名作为前缀,如"com.example.project.SHOW_COLOR”),并可定义相应的Activity来处理我们的自定义动作。

(2)Data,也就是执行动作要操作的数据。Android中采用指向数据的一个URI来表示,如在联系人应用中,一个指向某联系人的URI可能为:content://contacts/1。对于不同的动作,其URI数据的类型是不同的(可以设置type属性指定特定类型数据),如ACTION_EDIT指定Data为文件URI,打电话为tel:URI,访问网络为http:URI。

(3)type(数据类型)显式指定Intent的数据类型(MIME)。一般Intent的数据类型能够根据数据本身进行判定,但是通过设置这个属性,可以强制采用显式指定的类型而不再进行推导。

(4)category(类别),被执行动作的附加信息。例如LAUNCHER_CATEGORY表示Intent的接受者应该在Launcher中作为顶级应用出现;而ALTERNATIVE_CATEGORY表示当前的Intent是一系列的可选动作中的一个,这些动作可以在同一块数据上执行。还有其他的如表所示。

表2-5方法含义Constant

CATEGORY_BROWSABLEMeaningThetargetactivitycanbesafelyinvokedbythe

browsertodisplaydatareferencedbyalink—

forexample,animageorane-mailmessage.

CATEGORY_GADGET

CATEGORY_HOMETheactivitycanbeembeddedinsideofanotheractivitythathostsgadgets.Theactivitydisplaysthehomescreen,thefirst

screentheuserseeswhenthedeviceisturnedon

orwhentheHOMEkeyispressed.

CATEGORY_LAUNCHER

CATEGORY_PREFERENCETheactivitycanbetheinitialactivityofataskandislistedinthetop-levelapplicationlauncher.Thetargetactivityisapreferencepanel.

(5)component(组件),指定Intent的的目标组件的类名称。通常Android会根据Intent中包含的其它属性的信息,比如action、data/type、category进行查找,最终找到一个与之匹配的目标组件。但是,如果component这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent

一款音乐播放器的设计文档。可以用作毕业设计哦

的其它所有属性都是可选的。

(6)extras(附加信息),是其它所有附加信息的集合。使用extras可以为组件提供扩展信息,比如,如果要执行“发送电子邮件”这个动作,可以将电子邮件的标题、正文等保存在extras里,传给电子邮件发送组件。理解Intent的关键之一是理解清楚Intent的两种基本用法:一种是显式的Intent,即在构造Intent对象时就指定接收者。另一种是隐式的Intent,即Intent的发送者在构造Intent对象时,并不知道也不关心接收者是谁,有利于降低发送者和接收者之间的耦合。对于显式Intent,Android不需要去做解析,因为目标组件已经很明确,Android需要解析的是那些隐式Intent,通过解析,将Intent映射给可以处理此Intent的Activity、IntentReceiver或Service。Intent解析机制主要是通过查找已注册在AndroidManifest.xml中的所有IntentFilter及

Android是通过Intent其中定义的Intent,最终找到匹配的Intent。在这个解析过程中,

的action、type、category这三个属性来进行判断的,判断方法如下:

如果Intent指明定了action,则目标组件的IntentFilter的action列表中就必须包含有这个action,否则不能匹配;

如果Intent没有提供type,系统将从data中得到数据类型。和action一样,目标组件的数据类型列表中必须包含Intent …… 此处隐藏:3869字,全部文档内容请下载后查看。喜欢就下载吧 ……

基于Android平台的音乐播放器的设计与实现(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/129738.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)