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

正文內(nèi)容

基于android平臺備忘錄軟件設(shè)計畢業(yè)論文-在線瀏覽

2024-08-08 03:45本頁面
  

【正文】 1),它告訴系統(tǒng)如何處理所創(chuàng)建的所有應(yīng)用組件(尤其是活動(Activity),服務(wù)(Service),意圖接收器(Intent Receiver)和內(nèi)容提供者(Content Provider))。(2)活動活動就是一個有生命周期的對象。不過這不是必須的,有些活動從不顯示UI界面。Android的用戶界面由一系列的視圖樹構(gòu)成。開發(fā)者可以通過創(chuàng)建一個新的視圖的方法來使用自定義的圖形處理技術(shù)(比如開發(fā)游戲,或者是使用了不常用的用戶圖形窗口界面)。比如應(yīng)用程序想要顯示一個網(wǎng)頁,那么它可以通過創(chuàng)建一個Intent實例并將其傳遞給系統(tǒng)來表示意圖瀏覽這個URI。意圖也可以用于廣播系統(tǒng)范圍內(nèi)的有效事件(例如通知事件)。它可以運行在它自己的進(jìn)程,也可以運行在其他應(yīng)用程序的進(jìn)程里,這取決于自身的需要.。例如媒體播放器的服務(wù),當(dāng)用戶退出媒體選擇的界面時,仍然希望音樂依然可以繼續(xù)播放,這時就可用服務(wù)來保證當(dāng)用戶界面關(guān)閉時音樂還繼續(xù)播放著。最常見的通知包括短信息、通話記錄和語音郵件,但是應(yīng)用程序也可以創(chuàng)建它們自己的通知事件。典型的例子就是使用內(nèi)容提供者來訪問聯(lián)系人列表。 Android應(yīng)用程序結(jié)構(gòu)解析 通常由以下四個組件來構(gòu)建一個完整的Android應(yīng)用程序。當(dāng)決定使用以上哪些組件來構(gòu)建Android應(yīng)用程序時,這是一個XML配置文件,在這個文件中可以聲明應(yīng)用程序組件以及它們的特性和要求。 活動是以上四個組件中最常用的一個。一個活動就相當(dāng)于應(yīng)用程序的一個用戶界面,由事件響應(yīng)以及視圖等組成。例如:一個文本聊天應(yīng)用程序,至少應(yīng)該包含一個聯(lián)系人列表界面、一個聊天界面、一個設(shè)置界面、一個聊天記錄查詢界面等等。顯示一個新界面就相當(dāng)于生成一個對應(yīng)的活動對象。當(dāng)一個新的活動出現(xiàn)時,前一個活動被中斷并被放入到一個歷史堆棧中。當(dāng)一個活動不再需要時,可以將它們從歷史堆棧中移除。Android通過一個被稱作意圖的特殊類,來實現(xiàn)界面與界面之間的跳轉(zhuǎn)。在意圖的描述結(jié)構(gòu)中,含有兩個重要的數(shù)據(jù)結(jié)構(gòu):動作和動作對應(yīng)的數(shù)據(jù)。例如:顯示一個聯(lián)系人信息的界面,可以創(chuàng)建一個意圖,并將它的動作設(shè)置成VIEW,數(shù)據(jù)設(shè)置成表示這個人信息的URI。當(dāng)發(fā)生一個有效的目的請求時,意圖過濾器用來描述一個活動能夠處理什么意圖。從一個界面跳轉(zhuǎn)到另一個界面是由解析各種意圖實現(xiàn)的。隨后,這個新的活動接收到意圖(myIntent)的通知并開始運行。活動可以在任何時候被一個具有等價意圖過濾器的新活動所替代。意圖接收器并不顯示UI界面,它是通過NotificationManager來通知用戶他們感興趣的事件發(fā)生了。當(dāng)一個意圖接收器被觸發(fā)時,系統(tǒng)會根據(jù)需要來啟動應(yīng)用程序。例如,假設(shè)有一個音樂播放器。所以,執(zhí)行音樂播放的代碼應(yīng)該在某個服務(wù)中。Android內(nèi)置了許多服務(wù),以及許多可輕松訪問這些服務(wù)的API。這樣做的好處是,可以保護(hù)系統(tǒng)及應(yīng)用程序,避免被其他不正常的應(yīng)用程序所影響。如果應(yīng)用程序之間想要共享數(shù)據(jù),就需要使用用內(nèi)容提供者。其他的應(yīng)用程序可以使用這些方法來保存和檢索此內(nèi)容提供者處理過的數(shù)據(jù)。而這四種組件是獨立的,它們之間可以互相調(diào)用,協(xié)調(diào)工作,最終組成一個真正的Android應(yīng)用。意圖負(fù)責(zé)對應(yīng)用中一次操作的動作、動作對應(yīng)的數(shù)據(jù)、附加數(shù)據(jù)進(jìn)行描述,Android則根據(jù)此意圖的描述,負(fù)責(zé)找到相應(yīng)的組件,將意圖傳遞給它,并完成組件的調(diào)用。例如,在一個聯(lián)系人維護(hù)的應(yīng)用中,當(dāng)在一個聯(lián)系人列表屏幕(假設(shè)對應(yīng)的Activity為listActivity)上,點擊某個聯(lián)系人后,希望能夠調(diào)出此聯(lián)系人的詳細(xì)信息,為了實現(xiàn)這個目的,listActivity需要構(gòu)造一個Intent,這個Intent用于告訴系統(tǒng),要做“查看”動作,此動作對應(yīng)的查看對象是“某聯(lián)系人”,然后調(diào)用startActivity(intent intent),將構(gòu)造的Intent傳入,系統(tǒng)會根據(jù)此intent中的描述。 Intent的抽象描述 在Android參考文檔中,對意圖的定義是執(zhí)行某操作的一個抽象描述。此外,還可以根據(jù)應(yīng)用的需要,定義自己的動作,并可定義相應(yīng)的活動來處理自定義的動作。另外,除了動作和數(shù)據(jù)這兩個重要屬性外,還有一些附加屬性:類別:被執(zhí)行動作的附加信息。而ALTERNATIVECATEGORY表示當(dāng)前的意圖是一系列的可選動作中的一個,這些動作可以在同一個數(shù)據(jù)上執(zhí)行。一般意圖的數(shù)據(jù)類型能夠根據(jù)數(shù)據(jù)本身進(jìn)行判定,但是通過設(shè)置這個屬性,可以強制采用指定的類型。通常Android會根據(jù)意圖中包含的其它屬性的信息,比如動作、數(shù)據(jù)/數(shù)據(jù)類型、類別進(jìn)行查找,最終找到一個與之匹配的目標(biāo)組件。指定了這個屬性以后,意圖的其它所有屬性都是可選的。使用附加信息可以為組件提供擴展信息,比如,如果要執(zhí)行“發(fā)送電子郵件”這個動作,可以將電子郵件的標(biāo)題、正文等保存在附加信息里,傳給電子郵件發(fā)送組件。這種語言使系統(tǒng)能夠理解諸如“查看某聯(lián)系人的詳細(xì)信息”之類的短語。應(yīng)用也可以提供自己的活動來處理已經(jīng)存在的這樣的“短語”,從而改變這些“短語”的行為。通過指定具體的組件類,通知應(yīng)用啟動對應(yīng)的組件。這些意圖需要包含足夠的信息,這樣系統(tǒng)才能根據(jù)這些信息,在所有的可用組件中,確定滿足此意圖的組件。,最終找到匹配的意圖。如果意圖沒有提供數(shù)據(jù)類型,系統(tǒng)將從數(shù)據(jù)中得到數(shù)據(jù)類型。如果意圖中的數(shù)據(jù)不是content:類型的URI,而且意圖也沒有明確指定它的數(shù)據(jù)類型,將根據(jù)意圖中數(shù)據(jù)的格式(比如:或者mailto:)進(jìn)行匹配。如果意圖指定了一個或多個類別,這些類別必須全部出現(xiàn)在組建的類別列表中。 Android活動的生命周期 Android平臺是個手機作業(yè)系統(tǒng)?,F(xiàn)在用戶使用智能手機,大多已習(xí)慣使用多工的作業(yè)系統(tǒng)(如windowsMobile),可以在用手機聽音樂的同時,執(zhí)行其他多個程序。每多執(zhí)行一個應(yīng)用程序,就會多耗費一些系統(tǒng)內(nèi)存,而手機里的內(nèi)存是相當(dāng)有限的。為了解決這個問題,Android引入了一個新的機制—生命周期。通常,每一個應(yīng)用程序(入口一般會是一個活動的onCreate方法),都會占據(jù)一個進(jìn)程。不管是使用者或開發(fā)者,都無法確定應(yīng)用程序何時會被回收。一個活動類別除了OnCreate方法之外,還預(yù)先定義了onPause(暫停)、OnResume(繼續(xù))等的基本方法,當(dāng)從一個活動切換到另一個活動的時候,原來的活動將經(jīng)過一連串的狀態(tài)改變。要讓用戶有好的使用體驗,活動需要在各個周期中負(fù)責(zé)保管狀態(tài)、恢復(fù)狀態(tài)、傳送資料等工作。主要有四種狀態(tài):(l)活動狀態(tài)活動狀態(tài)是指用戶啟動應(yīng)用程序或活動后,活動運行中的狀態(tài)。其他的活動都處于未啟動、停止或是暫停的狀態(tài)。當(dāng)警告對話框或電話來了時,都會讓原來運行的活動退到背景畫面?;顒犹幵跁和顟B(tài)時,用戶無法與原活動互動。通過按返回鍵,可以調(diào)出所有處于停止?fàn)顟B(tài)的應(yīng)用程序列表。(4)已回收或未啟動狀態(tài)已回收或未啟動狀態(tài)是指活動尚未被啟動、已經(jīng)被手動終止或己經(jīng)被系統(tǒng)回收的狀態(tài)。如果是被系統(tǒng)回收,可能是因為內(nèi)存不足了,所以系統(tǒng)根據(jù)內(nèi)存不足時的回收規(guī)則,將處于停止?fàn)顟B(tài)的活動所占用的內(nèi)存回收。創(chuàng)建時分配資源,銷毀時釋放資源。相反地,當(dāng)活動運行到停止?fàn)顟B(tài)時,這個活動就會從屏幕上消失。(3)用戶取得屏幕的控制權(quán)(繼續(xù)/暫停)當(dāng)有個警告對話框、短信、電話等信息進(jìn)入時,原來的活動會進(jìn)入暫停狀態(tài),暫時放棄屏幕的控制權(quán),被中斷到背景去,將前景交給優(yōu)先級高的事件。 由實際運行來看,我們可以歸納出所有Android應(yīng)用程序都遵循的運作流程:(l)一般啟動啟動一個活動的基本流程為onCreate→onstart→onResume。在一切就緒后,取得屏幕的控制權(quán)(恢復(fù)狀態(tài)),用戶可以開始使用這個程序。該流程首先凍結(jié)原來的活動,再交出屏幕控制權(quán)。(3)回到原來活動回到原來活動的基本流程為:onPause(2)→onRestart(1)→onstart(l)→onResume(1)→onstop(2)→onDestroy(2)。(4)退出結(jié)束退出結(jié)束的基本流程為onPause→onStop→onDestroy。(5)回收后再啟動回收后再啟動的基本流程為onCreate→onStart→onResume。當(dāng)在模擬器上已經(jīng)執(zhí)行過多個應(yīng)用程序,只要按下返回鍵,就會開啟最近一次開啟過的活動。如果應(yīng)該開啟的活動己經(jīng)被回收了,那么這個活動會再次被創(chuàng)建。所以如果要讓再次被創(chuàng)建的活動跟原來開啟過的一樣,那么在活動之間切換時,就要保存資料:即在每次活動運行到暫停或停止?fàn)顟B(tài)時先保存資料,然后在創(chuàng)建時將資料讀出來。Eclipse平臺:Eclipse 是一個運行插件的平臺。Android Developer Tools:按照安裝說明安裝 Android Developer Tools(Eclipse 插件)。IntentReceiverIntentReceiverIntentFilter — 這個文件包含 Android 活動所用的視覺元素或資源。(完整)— 這是完整的 文件,包含每個重要元素的描述。國內(nèi)基本是用Windows系統(tǒng),所以就選擇Windows版本的SDK。圖 4 環(huán)境變量配置(2)接著打開網(wǎng)址。(3)最后是打開網(wǎng)址(開發(fā)Android的IDE)。(2)彈出對話框后,選擇Search for new features to install,然后點擊Next。(4)在編輯框中輸入更新插件的地址:,點擊OK。(6)在返回的對話框中選擇Android pluginEclipse IntegrationAndroid development Tools并且點擊Next。(8)點擊Finish。(10)重新啟動Eclipse。②選擇Android屬性面板。④選擇Apply,最后點擊OK。首先是創(chuàng)建一個Android工程,然后設(shè)置應(yīng)用啟動配置。(l)創(chuàng)建一個Android工程。按照下面的步驟建立Android工程:①選擇FileNewproject。③設(shè)置工程的用途:選擇create new project in workspace可以建立一個新的Android工程,輸入工程的名字,代碼的開發(fā)包的名字,應(yīng)用界面的類名字,應(yīng)用程序的標(biāo)題的名字。④點擊Finish。(2)創(chuàng)建Android虛擬機點擊windowsandroid SDK and AVD Manager,選中Virtual Devices,選擇new按鈕,填寫需要創(chuàng)建的name,并且選擇Target。就完成對應(yīng)版本的android虛擬機創(chuàng)建。一旦建立了工程啟動配置就可以按照如下的步驟調(diào)試程序:從Eclipse的主菜單中選擇RunRun或RunDebug或者點擊工程文件右鍵選擇run asAndroid Application。 Package Explorer中的組件 (1)src 文件夾包含示例應(yīng)用程序的包。(3)res 文件夾包含應(yīng)用程序的資源,包括:圖標(biāo),布局文件,字符串。 正如前面提到的,Android 中的資源放在項目的 res 子目錄中。(2)Layouts:這個文件夾包含表示應(yīng)用程序布局和視圖的 XML 文件。(3)Values: 文件。 圖 7 main布局fill_parent:使視圖元素占滿可用的空間。wrap_content:這個值讓 Android 把元素一個接一個地排列,不進(jìn)行拉伸。編譯過程的輸出之一是 文件,這個文件向應(yīng)用程序的其余部分提供資源。這個文件列出應(yīng)用程序中包含的所有活動、服務(wù)、內(nèi)容提供器和接收器,以及應(yīng)用程序支持的IntentFilter。所有代碼和布局文件見附錄。以下將設(shè)計存儲數(shù)據(jù)表以及創(chuàng)建ContentProvider來實現(xiàn)數(shù)據(jù)的增、刪、查、改等操作。常量類名稱為TaskList,該類有個內(nèi)部類Tasks實現(xiàn)了BaseColums接口,在該類中聲明URI和列表常量等,方便后面使用。(2) 備忘錄ContentProvider實現(xiàn)為了使備忘錄數(shù)據(jù)表具有通用的數(shù)據(jù)共享訪問機制,需要通過ContentProvider來實現(xiàn)。在該類內(nèi)部還定義了一個DatabaseHelper內(nèi)部類繼承SQLiteHelper,該類提供了常見或打開數(shù)據(jù)庫、創(chuàng)建或刪除表的功能。圖9是代碼縮略圖。這里通過一個ListView來展示備忘錄列表,通過選項菜單提供維護(hù)數(shù)據(jù)接口。該類主要功能有三個:一是通過前面定義的TaskListProvider查詢備忘錄列表,到Cusor游標(biāo),通過Cusor游標(biāo)構(gòu)建SimpleCusorAdapter,并通過ListView顯示;二是響應(yīng)ListView單擊事件,當(dāng)用戶單擊某備忘錄信息時,顯示該條備忘錄的詳細(xì)信息;三是提供選項菜單添加和刪除備忘錄信息。圖10 主界面代碼縮略圖在onCreat方法里,首先調(diào)用Intent里的getIntent方法得到Intent對象,接著使用getData方法得到數(shù)據(jù),當(dāng)未取到數(shù)據(jù)時使用setData方法將數(shù)據(jù)設(shè)置成Tasks類里對應(yīng)的uri。 接著用onCreatOptionMenu方法創(chuàng)建選項菜單,以及用onOptionsItemSelected方法創(chuàng)建選項菜單單擊方法。圖11 主界面 ,此方法體中定義一個Intent對象,使用setClass方法實現(xiàn)界面跳轉(zhuǎn)到此TaskDetailActivity所對應(yīng)的界面.結(jié)果如圖13。備忘錄信息業(yè)通過ListView來顯示,ListView的每一項通過自定義View來實現(xiàn)。圖12為代碼縮略圖。圖13列表單擊響應(yīng)圖12中init方法用來初始化接收的來自TaskListActivity類傳遞過來的數(shù)據(jù)信息;在onCreate方法中首先使用getListView方法取到ListView,接著使用getLayoutInflater方法實例化LayoutInflacter,接著設(shè)置ListView適配器,使用Calendar中的靜態(tài)方法getInstance獲得Calendar實例,得到當(dāng)前日期、
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1