freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科畢設(shè)論文-基于android平臺的點(diǎn)歌系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)-文庫吧資料

2025-06-14 04:55本頁面
  

【正文】 前置條件 播放主界面正在播放音樂 詳 細(xì)描述 用戶點(diǎn)擊進(jìn)入播放主界面 用戶點(diǎn)擊播放 /暫停按鈕 系統(tǒng)暫停播放音樂,并刷新播放界面 后置條件 音樂已暫停 3)選擇上一首歌曲用例說明,如表 33所示。 1)播放歌曲,如表 31所示。音樂播放主界面用例圖如下圖 31所示。 1)音樂播放主界面 音樂播放主界面是用戶進(jìn)入點(diǎn)歌系統(tǒng)的主界面,即用戶點(diǎn)擊 HomeScreen中點(diǎn)歌系統(tǒng)的圖標(biāo),便會打開此界面。點(diǎn)歌系統(tǒng)的用戶操作界面可分為以下三部分 :音樂播放主界面、音樂庫主界面、播放隊(duì)列界面。 點(diǎn)歌系統(tǒng)需求分析 功能需求 作為 Android平臺上開發(fā)的應(yīng)用軟件,它必須具備與用戶交互的界面,界面簡潔美觀易于操作。 2)用戶特點(diǎn) 本軟件最終用戶是購買手機(jī)使用點(diǎn)歌系統(tǒng)的普通用戶。用戶可以通過播放器從音樂庫里選擇自己喜愛的歌曲,新建播放列表,播放或暫停歌曲,選擇上一首歌曲,下一首歌曲,調(diào)整歌曲播放的進(jìn)度,選擇播放隊(duì)列里播放的歌曲等。 1)需求分析目標(biāo)和任務(wù) 本軟件的目標(biāo)是開發(fā)一款基于 Android平臺符合用戶使用需求的點(diǎn)歌系統(tǒng)。 概述 隨著手機(jī)功能的不斷增強(qiáng),音樂播放器己成為智能手機(jī)重要軟件之一。在這一節(jié)中主要就是圍繞 “Android 手機(jī)開的 點(diǎn)歌 系統(tǒng)必須做什么 ”這個(gè)問題來分析說明的。對 15 軟件需求的合理把握是軟件開發(fā)周期中非常 重要 的一個(gè)環(huán)節(jié),本章將對 點(diǎn)歌系統(tǒng) 做較為全面的需求分析。使用數(shù)據(jù)庫的獨(dú)占性和共享鎖處理事務(wù),這樣既允許多個(gè)進(jìn)程并發(fā)讀取數(shù)據(jù)庫中的數(shù)據(jù),又能保 證最多只有一個(gè)進(jìn)程寫數(shù)據(jù),可以有效地防止讀臟數(shù)據(jù)、不可重復(fù)讀、丟失修改等異常的發(fā)生。 5) 緊湊 : 不需要系統(tǒng)提供太大的資源,占用不到 1M的內(nèi)存空間就可運(yùn)行。 3) 單個(gè)數(shù)據(jù)文件 : 將用戶數(shù)據(jù)存儲在一個(gè)文件中。 SQLite數(shù)據(jù)庫具有以下特點(diǎn) : 1) 無需配置 : 直接解壓可執(zhí)行文件即可運(yùn)行。 3) SQLite數(shù)據(jù)庫 : SQLite是一種開源的、與底層無關(guān)的,輕量級的數(shù)據(jù)庫,最大支持 2048GB的數(shù)據(jù)存儲,與其它大多數(shù) SQL數(shù)據(jù)庫不同的是, SQLite沒有獨(dú)立的服務(wù)進(jìn)程。修改 SharedPreferences對象中的內(nèi)容需要用到 putBoolean() , putFloat()和 putInt()等函數(shù),并且在修改完后還要調(diào)用 mit()函數(shù),否則修改無效。 1) SharedPreferences: 用鍵 /鍵值形式的二元組來存儲數(shù)據(jù),支持的數(shù)據(jù)類型有Boolean, string, float, long和 integer, 通常用來存儲默認(rèn)值、實(shí)例變量、 UI狀態(tài)和用戶設(shè)置等。 Android 推薦使用 XML 布局文件的方式來控制用戶界面的顯示,這樣做不僅簡單明了,還可以將視圖控制邏輯從代碼中剝離出來,放入一個(gè)單獨(dú)的文件中進(jìn)行控制,更好的體現(xiàn)了 MVC 原則。 5) TableLayout(表格布局 ): 該布局中元素之間的排列由表格決定,表格的行和列通過添加 TableRow 或其他組 件來控制,通常加入一個(gè) TableRow 或是一個(gè)組件都代表一行,表格的寬度取決于父容器的寬度,這種布局只是實(shí)現(xiàn)方式與表格類似,但元素之間并沒有實(shí)際的分界線。 3) AbsoluteLayout(絕對布局 ): 該布局中元素之間根據(jù)坐標(biāo)排列,即將整個(gè)手機(jī)劃分成坐標(biāo)系,通過指定坐標(biāo)系中的兩個(gè)偏移量來決定元素的位置。 圖 28 Android 布局管理器的類圖 1) LinearLayout(線性布局 ): 該布局中元素之間成線性排列,常用的布局有水平布局和垂直布局。 3) 布局管理 : Android 使用布局管理器來管理應(yīng)用程序中各用戶界面的組件,這樣做的好處是可以避免因手機(jī)分辨率、尺 寸等的差異導(dǎo)致編寫的應(yīng)用程序無法移植,因?yàn)椴季止芾砥髂芨鶕?jù)運(yùn)行平臺調(diào)整組件的大小。 1) 視圖組件 (View: 是基類 的一個(gè)實(shí)例,用 來存儲屏幕上特定矩形內(nèi)的布局和內(nèi)容屬性,由視圖又衍生出了一個(gè)子類 Widgets(窗體 控件 ),用來處理屏幕區(qū)域的測量和繪制,常用的 Widget 包括 Text, EditText, Button, CheckBox和 ScrollView 等。需要注意的是, Content Provider是基于權(quán)限控制的,這種做法可以提高數(shù)據(jù)的安全性。 (五) Content Provider:為應(yīng)用程序之間共享數(shù)據(jù)提供了一個(gè)統(tǒng)一的接口并隱藏了具體的數(shù)據(jù)來源, Android 系統(tǒng)中為一些常見的應(yīng)用 (如聯(lián)系人、音樂、圖像等 )定義了相應(yīng)的 Content Provider,調(diào)用者通過相應(yīng) 的 URI 來對數(shù)據(jù)進(jìn)行訪問。廣播接收器的生命周期很短,只有在廣播消息抵達(dá)接收器并且接收器中的 onReceive()函數(shù)被調(diào)用時(shí)處于活躍狀態(tài),一旦 onReceive()函數(shù)返回后,廣播接收器就處于失活狀態(tài)。這些廣播信息也許來自于系統(tǒng)自身,如電池電量低、拍攝照片、來電話或短信等 ; 也許來自應(yīng)用程序,比如下載完成時(shí)發(fā)送通知來告知用戶。例如對于一個(gè)音樂播放程序,會在 Intent 中找到需要播放的音樂曲目。例如一個(gè)音樂播放程序,可以在 onCreate()中創(chuàng)建音樂播放線程,在 onDestroy()中終止這個(gè)線程。 一個(gè) Service 也具有一定的生命周期,如圖 27 所示 。這個(gè)鏈接通過 ()方法建立,并通過調(diào)用 ()方法來關(guān)閉。有兩種不同的方式可以來啟動一個(gè) Service,第一種方式是通過調(diào)用 ()來啟動,調(diào)用 ()來結(jié)束,這種 方式無論調(diào)用了多少次 startService()方法,都只需要調(diào)用一次 stopService()方法來停止服務(wù)。 public class Activity extends ApplicationContext { protected void onCreate(Bundle savedlnstanceState); protected void onStart(); protected void onResume(); 11 protected void onPause(); protected void onStop(); protected void onDestroy(); } (二) Service: 沒有可視化的用戶界面,在后臺運(yùn)行,通常用來完成比較耗時(shí)的工作,并且可以與其它程序進(jìn)行交互。 Activity 可以經(jīng)常在 resumed 和 paused 狀態(tài)之間切換,如當(dāng)一個(gè)新的 Intent被發(fā) 送時(shí)。 2)在 onStart()到 onStop()之間, Activity 處于生命周期的前兩個(gè)狀態(tài),此時(shí)無論該 Activity 是否能與用戶交互,都具有可見性,可以保存相關(guān)的信息。 4)結(jié)束狀態(tài),此時(shí)的 Activity 已經(jīng)被從內(nèi)存中銷毀,下一次啟動時(shí)需要重置之前被保存的狀態(tài)。 2)暫停狀態(tài),此時(shí)的 Activity 失去了焦點(diǎn),但是依然保持可見狀態(tài) (非全屏或是透明 )并保存所有的信息,在內(nèi)存過低時(shí)可能被 “銷毀 ”。打開前一個(gè) Activity 可以通過回退來實(shí)現(xiàn)。每個(gè)Activity 都是通過繼承來被實(shí)現(xiàn)為一個(gè)單獨(dú)的活動類,一個(gè)應(yīng)用程序通常由多個(gè)Activity 組成,每個(gè) Activity 都具有自己的生命周期。其中 Activity 組件是每個(gè)應(yīng)用程序所必須用到的,因?yàn)槿魏我粋€(gè)應(yīng)用程序都必須具備與用戶交互的界面。 圖 25 配置 AVD 9 Android 程序開發(fā) 程序開發(fā)組件 一個(gè) Android 應(yīng)用程序通常由以下五個(gè)組件中的任意多個(gè)組成:活動 (Activity )、意圖 (Intent )、服務(wù) (Service)、廣播接收器 (Broadcast Receiver)和內(nèi)容提供器 (Content Provider)。這里只介紹在 Eclipse中創(chuàng)建 AVD的方法,步驟如下:打開 Eclipse,單機(jī) Android小機(jī)器人打開 Android SDK and AVD Manager;點(diǎn)擊左側(cè)面板的 Virtual Devices,再點(diǎn)擊右側(cè)的 New;填入 Name,選擇 Target的 API, SD Card大小任意;點(diǎn)擊 Create AVD即 可完成 AVD的創(chuàng)建。 在 Android ,必須至少創(chuàng)建一個(gè) AVD來模擬一套虛擬設(shè)備運(yùn)行 Android應(yīng)用程序。 在出 現(xiàn)的 列表 中確 保 ://,然后單擊 Install按鈕,最后安照提示步驟即可完成安裝。 圖 24 加載 Android SDK 8 4) 下載并安裝 ADT插件; ADT是為方便 Android應(yīng)用而開發(fā)的插件,包含一系列強(qiáng)大的擴(kuò)展功能,可以方便、快捷的創(chuàng)建、運(yùn)行和調(diào)試 Android程序。具體設(shè)置方法 是在 Eclipse 界面上選擇WindowPreferenceAndroid,然后在 SDK Location框中選擇 SDK的解壓路徑,點(diǎn)擊Apply按鈕,最后單擊 OK完成。 7 圖 23 下載安裝 Eclipse 3) 下載 Android SDK; Android SDK是 Android專用的軟件開發(fā)包工具,包括程序開發(fā)中用到的函數(shù)庫、編譯程序等資源,是開發(fā) Android程序必備的工具之一。 2) 下載并安裝 Eclipse; 進(jìn)入 : //,選擇合適的 Eclipse版本下載,如圖23所示。 圖 22 下載 安裝 JDK JDK安裝完成后,還得配置相應(yīng)的環(huán)境變量才能使用。在安裝 Eclipse之前,必須先下載和安裝 JDK。搭建 Android開發(fā)環(huán)境有以下五個(gè)主要步驟:下載并安裝 JDK;下載并安裝 Eclipse;下載 Android SDK;下載并安裝 ADT插件;配置 Android AVD。Eclipse本身只是一個(gè)框架和一組服務(wù),但是通過 加入插件可以構(gòu)建針對不同語言的開發(fā)環(huán)境,目前支持的主要開發(fā)語言有 Java和 C/C++。 Android 開發(fā)環(huán)境配置 6 由于 Java語言具有強(qiáng)大的功能和與平臺無關(guān)的特性,并且還具備強(qiáng)制類型安全,因此 Google選擇使用 Java語言來開發(fā) Android系統(tǒng)下的應(yīng)用程序。 4) 通知管理器:幫助應(yīng)用程序在狀態(tài)欄中顯示各自的提示信息,如收到 短信 5) 活動管理器:管理應(yīng)用程序的生命周期,還提供導(dǎo)航或回退功能等。 2) 內(nèi)容提供器:提供數(shù)據(jù)共享的途徑,如聯(lián)系人數(shù)據(jù)庫。每個(gè)應(yīng)用都會包括一系列的服務(wù)和系統(tǒng),具體如下: 1) 豐富而又可擴(kuò)展的視圖:構(gòu)建應(yīng)用程序時(shí)可以將這些視圖進(jìn)行各種組合來形成各式各樣的應(yīng)用程序界面。 Dalvik虛擬機(jī)可以運(yùn)行 Android程序,這些程序需要使用 dx工具轉(zhuǎn)換成 .dex類型的可執(zhí)行文件,該格式文件在大小方面往往比同樣的 .class文件壓縮成的 .jar文件更小,可以降低對內(nèi)存的要求。 Dalvik虛擬機(jī)是一個(gè) 不同于其他標(biāo)準(zhǔn)虛擬機(jī)的虛擬系統(tǒng),采用寄存器架構(gòu),能在一個(gè)設(shè)備中同時(shí)高效運(yùn)行多個(gè)程序。 7) SQLite:一個(gè)對所有應(yīng)用程序可用的、功能強(qiáng)大的輕量級關(guān)系型數(shù)據(jù)庫引擎。 5) 3D libraries:基于 OperGL ,可以使用硬件 3D加速或高度優(yōu)化 5 的軟件 3D加速。 3) Surface Manager:管理顯示子系統(tǒng),為多個(gè)應(yīng)用程序提供 2D和 3D圖層的無縫融合。 (二) Android函數(shù)庫: Android包含一個(gè)能被不同組件使用的 C/C++庫,這些庫通過 Android應(yīng)用程序框架來為上層應(yīng)用程序提供服務(wù),下面是一些常用的核心庫: 1) libc:系統(tǒng) C庫,從 BSD發(fā)展而來的標(biāo)準(zhǔn) C函數(shù)庫,是專門為基于嵌入式 Linux設(shè)備所定制的。 圖 21 Android系統(tǒng)架構(gòu) 下面對每層進(jìn)行具體的描述: (一) Linux內(nèi)核: Android系統(tǒng)的內(nèi)核在 剪和改進(jìn),繼承了 Linux內(nèi)核安全性、內(nèi)存管理、進(jìn)程管理、網(wǎng)絡(luò)協(xié)議棧和驅(qū)動模型等。 4 Android 系統(tǒng)架構(gòu) Android系統(tǒng)采用了軟件棧的設(shè)計(jì)結(jié)構(gòu),從上到下由四層組成, 分別是 Linux內(nèi)核層、中間層、應(yīng)用程序框架( Application Framework)和應(yīng)用層( Applications)。 3) 其他技術(shù)的競爭:微軟因?yàn)閾碛?PC 操作系統(tǒng)市場最大的占有率,在未來手機(jī)與電腦互相聯(lián)動并實(shí)現(xiàn)無縫對接方面 Windows Mobile 相比 Android 具有先天優(yōu)勢,此外,即使在智能終端自身的操作系統(tǒng)上, iOS 系統(tǒng)也是 Android 的一個(gè)勁敵。尤其是 Android 系統(tǒng)作為一個(gè)開源的系統(tǒng),面臨的攻擊會比其它封閉系統(tǒng)要多,這是 Android 系統(tǒng)要持續(xù)發(fā)展所必須解決的一個(gè)重要問題。 凡事都具有兩面性,作為一個(gè)如此受歡迎的系統(tǒng)也不例外。 2)
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1