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

正文內(nèi)容

基于android的工作日志記錄器的設(shè)計畢業(yè)設(shè)計(doc畢業(yè)設(shè)計論文)(編輯修改稿)

2024-07-23 13:16 本頁面
 

【文章內(nèi)容簡介】 訊雙方進(jìn)行身份認(rèn)證、協(xié)商加密算法、交換加密密鑰等。SSL協(xié)議提供的服務(wù)主要有:認(rèn)證用戶和服務(wù)器,確保數(shù)據(jù)發(fā)送到正確的客戶機(jī)和服務(wù)器;加密數(shù)據(jù)以防止數(shù)據(jù)中途被竊??;維護(hù)數(shù)據(jù)的完整性,確保數(shù)據(jù)在傳輸過程中不被改變。(7)SQLite: SQLite是一套開放性的關(guān)聯(lián)式資料庫,能夠被所有應(yīng)用程序使用的輕量級的關(guān)系數(shù)據(jù)庫引擎。(8)web Kit:是一個先進(jìn)的網(wǎng)頁瀏覽器引擎,被用來構(gòu)建Android瀏覽器和內(nèi)嵌的web視圖,也可以讓開發(fā)者利用這個引擎來做不同的應(yīng)用。(9)lib c:就是一個BSD標(biāo)準(zhǔn)C類庫。但是,針對Linux嵌入式裝置進(jìn)行過最佳化的調(diào)整。 Android運(yùn)行時的組件雖然Android是用Java語言來開發(fā)、撰寫應(yīng)用程序,但卻不使用Java運(yùn)行時組件來執(zhí)行Java程序,而是使用了由Google自行研發(fā)的Android運(yùn)行時組件來執(zhí)行程序。Android運(yùn)行時組件包括兩個重要的部分,一個是核心類庫,另一個是Dalvik虛擬機(jī)。 Android應(yīng)用的構(gòu)成和工作機(jī)制對于一個Android應(yīng)用程序來說,是由Activity、IntentReceiver、Service、Content Provider四部分組成,但并不是每一個Android應(yīng)用程序都必須由這四部分組成。在應(yīng)用程序中使用時。這個配置文件是每個Android應(yīng)用程序所必需的,用于定義應(yīng)用程序的組件、組件的功能以及必要條件等。Android應(yīng)用的構(gòu)成和工作流程如圖32: IntentActivity儲存設(shè)備Binder外部事件Intent ReceiverContentProviderServiceActivity通過Intent實現(xiàn)活動之間的轉(zhuǎn)換通過ContentProvider進(jìn)行數(shù)據(jù)儲存通過Intent Receiver對外部事件進(jìn)行響應(yīng)通過Binder對Service進(jìn)行綁定 圖32 Android的構(gòu)成和工作流程4 Android應(yīng)用程序結(jié)構(gòu)剖析盡管各種Android應(yīng)用程序的大小和復(fù)雜性可能相差甚大,但它們的結(jié)構(gòu)是類似的。包括API中的7個部分,以及活動,意圖接收器,服務(wù)和內(nèi)容提供者。 Android中的APIAndroid API主要包含了以下幾個部分:(1),它告訴系統(tǒng)如何處理所創(chuàng)建的所有應(yīng)用組件(尤其是活動(Activity),服務(wù)(Service),意圖接收器(Intent Receiver)和內(nèi)容提供者(Content Provider))。舉例來說,控制文件就是把活動和要接收的意圖(Intents)連接在一起的“膠水”。Android應(yīng)用程序描述文件。此文件定義應(yīng)用程序的Activity、ContentProvider、Service和Intent接收者。也可以使用此文件以聲明方式定義應(yīng)用程序所需的權(quán)限,以及將特定權(quán)限授予使用該應(yīng)用程序的Service的其他應(yīng)用程序。而且,該文件可以包含可用于測試該應(yīng)用程序或其他應(yīng)用程序的工具細(xì)節(jié)。(2)活動活動就是一個有生命周期的對象。一個活動就是完成某些工作的代碼塊,這部分工作還可能包括對用戶UI界面的顯示。不過這不是必須的,有些活動從不顯示UI界面。(3)視圖視圖可以將其自身繪制到屏幕上。Android的用戶界面由一系列的視圖樹構(gòu)成。接口都是由一組以樹的形式出現(xiàn)的視圖組成的。開發(fā)者可以通過創(chuàng)建一個新的視圖的方法來使用自定義的圖形處理技術(shù)(比如開發(fā)游戲,或者是使用了不常用的用戶圖形窗口界面)。(4)意圖意圖是一個簡單的消息對象,它表示程序想做某事的“意圖”。比如應(yīng)用程序想要顯示一個網(wǎng)頁,那么它可以通過創(chuàng)建一個Intent實例并將其傳遞給系統(tǒng)來表示意圖瀏覽這個URI。系統(tǒng)將定位到能處理這一Intent的代碼(在當(dāng)前情況下就是瀏覽器),并運(yùn)行之。意圖也可以用于廣播系統(tǒng)范圍內(nèi)的有效事件(例如通知事件)。(5)服務(wù)服務(wù)是運(yùn)行在后臺的一段代碼。它可以運(yùn)行在它自己的進(jìn)程,也可以運(yùn)行在其他應(yīng)用程序的進(jìn)程里,這取決于自身的需要。其它的組件可以綁定到一個服務(wù)上來,通過遠(yuǎn)程過程調(diào)用(RPC)來調(diào)用這個方法。例如媒體播放器的服務(wù),當(dāng)用戶退出媒體選擇的界面時,仍然希望音樂依然可以繼續(xù)播放,這時就可用服務(wù)來保證當(dāng)用戶界面關(guān)閉時音樂還繼續(xù)播放著。(6)通知通知將以小圖標(biāo)的形式呈現(xiàn)在狀態(tài)欄里,用戶通過與圖標(biāo)的交互來接收消息。最常見的通知包括短信息、通話記錄和語音郵件,但是應(yīng)用程序也可以創(chuàng)建它們自己的通知事件。(7)內(nèi)容提供者內(nèi)容提供者是用來提供對設(shè)備上數(shù)據(jù)進(jìn)行訪問。典型的例子就是使用內(nèi)容提供者來訪問聯(lián)系人列表。應(yīng)用程序也可以使用其它程序通過內(nèi)容提供者提供的數(shù)據(jù),同時也可以定義自己的內(nèi)容提供者來向其它應(yīng)用提供數(shù)據(jù)訪問服務(wù)。 Android應(yīng)用程序結(jié)構(gòu)解析通常由以下四個組件來構(gòu)建一個完整的Android應(yīng)用程序。Activity、意圖接收器、Service、內(nèi)容提供者。由于不是所有的Android應(yīng)用程序都必須具備上面的四個組件,可以由上面的一個或幾個來組建。當(dāng)決定使用以上哪些組件來構(gòu)建Android應(yīng)用程序時,這是一個XML配置文件,在這個文件中可以聲明應(yīng)用程序組件以及它們的特性和要求。這個配置文件是每個Android應(yīng)用程序所必需的。 Activity(活動)Android 中,Activity 是所有程序的根本,所有程序的流程都運(yùn)行在Activity 之中,Activity可以算是開發(fā)者遇到的最頻繁,也是Android 當(dāng)中最基本的模塊之一。在Android的程序當(dāng)中,Activity 一般代表手機(jī)屏幕的一屏。如果把手機(jī)比作一個瀏覽器,那么Activity就相當(dāng)于一個網(wǎng)頁。在Activity 當(dāng)中可以添加一些Button、Check box 等控件??梢钥吹紸ctivity 概念和網(wǎng)頁的概念相當(dāng)類似。一般一個Android 應(yīng)用是由多個Activity 組成的。這多個Activity 之間可以進(jìn)行相互跳轉(zhuǎn),例如,按下一個Button 按鈕后,可能會跳轉(zhuǎn)到其他的Activity。和網(wǎng)頁跳轉(zhuǎn)稍微有些不一樣的是,Activity之間的跳轉(zhuǎn)有可能返回值,例如,從Activity A 跳轉(zhuǎn)到Activity B,那么當(dāng)Activity B 運(yùn)行結(jié)束的時候,有可能會給Activity A 一個返回值。這樣做在很多時候是相當(dāng)方便的。當(dāng)打開一個新的屏幕時,之前一個屏幕會被置為暫停狀態(tài),并且壓入歷史堆棧中。用戶可以通過回退操作返回到以前打開過的屏幕。我們可以選擇性的移除一些沒有必要保留的屏幕,因為Android會把每個應(yīng)用的開始到當(dāng)前的每個屏幕保存在堆棧中。 Intent Receiver(意圖接收器)當(dāng)想要編寫代碼來對外部事件做一些處理時,可以使用意圖接收器。意圖接收器并不顯示UI界面,它是通過NotificationManager來通知用戶他們感興趣的事件發(fā)生了。,()來注冊自己的意圖接收器。當(dāng)一個意圖接收器被觸發(fā)時,系統(tǒng)會根據(jù)需要來啟動應(yīng)用程序。 Service(服務(wù))服務(wù)是具有長生命周期并且沒有用戶界面的運(yùn)行在后臺的一段代碼。它可以運(yùn)行在它自己的進(jìn)程,也可以運(yùn)行在其他應(yīng)用程序的進(jìn)程里,這取決于自身的需要。其它的組件可以綁定到一個服務(wù)上來,通過遠(yuǎn)程過程調(diào)用(RPC)來調(diào)用這個方法。Service 是android 系統(tǒng)中的一種組件,它跟Activity 的級別差不多,但是他不能自己運(yùn)行,只能后臺運(yùn)行,并且可以和其他組件進(jìn)行交互。Service是沒有界面的長生命周期的代碼。Service 是一種程序,它可以運(yùn)行很長時間,但是它卻沒有用戶界面。舉個例子:打開一個音樂播放器的程序,這個時候若想上網(wǎng)了,那么,我們打開Android 瀏覽器,這個時候雖然我們已經(jīng)進(jìn)入了瀏覽器這個程序,但是,歌曲播放并沒有停止,而是在后臺繼續(xù)一首接著一首的播放。其實這個播放就是由播放音樂的Service進(jìn)行控制。當(dāng)然這個播放音樂的Service也可以停止,例如,當(dāng)播放列表里邊的歌曲都結(jié)束,或者用戶按下了停止音樂播放的快捷鍵等。service 可以在和多場合的應(yīng)用中使用,比如播放多媒體的時候用戶啟動了其他Activity這個時候程序要在后臺繼續(xù)播放,比如檢測SD 卡上文件的變化,再或者在后臺記錄你地理信息位置的改變等等。開啟service有兩種方式:(1) Service():Service會經(jīng)歷on Create 到on Start(如果Service還沒有運(yùn)行,則android先調(diào)用on Create()然后調(diào)用on Start();如果Service已經(jīng)運(yùn)行,則只調(diào)用on Start(),所以一個Service的on Start方法可能會重復(fù)調(diào)用多次 );stop Service的時候直接on Destroy,如果是調(diào)用者自己直接退出而沒有調(diào)用stop Service的話,Service會一直在后臺運(yùn)行。該Service的調(diào)用者再啟動起來后可以通過stop Service關(guān)閉Service。 注意, service()不會嵌套(即使會有相應(yīng)的on Start()方法被調(diào)用),所以無論同一個服務(wù)被啟動了多少次, Service()或者stop Self(),他都會被停止。補(bǔ)充說明:傳遞給start Service()的Intent對象會傳遞給on Start()方法。調(diào)用順序為:on Create on Start(可多次調(diào)用) on Destroy(2) Service():Service會經(jīng)歷on Create() on Bind(),on Bind將返回給客戶端一個IBind接口實例,IBind允許客戶端回調(diào)服務(wù)的方法,比如得到Service運(yùn)行的狀態(tài)或其他操作。這個時候把調(diào)用者(Context,例如Activity)會和Service綁定在一起,Context退出了,Service就會調(diào)用on Unbind on Destroyed相應(yīng)退出,所謂綁定在一起就共存亡了 。 Content Provider(內(nèi)容提供者)在Android中,每個應(yīng)用程序都是有自己的UserID及在自己的進(jìn)程中執(zhí)行。這樣做的好處是,可以保護(hù)系統(tǒng)及應(yīng)用程序,避免被其他不正常的應(yīng)用程序所影響??梢园衙總€進(jìn)程想像成是一個黑盒子,彼此不會互相影響,連內(nèi)存的資料都無法共享。如果應(yīng)用程序之間想要共享數(shù)據(jù),就需要使用用內(nèi)容提供者。一個內(nèi)容提供者就是一個類,它實現(xiàn)了一個標(biāo)準(zhǔn)的方法集合。其他的應(yīng)用程序可以使用這些方法來保存和檢索此內(nèi)容提供者處理過的數(shù)據(jù)。 Android活動新機(jī)制Android平臺是個手機(jī)操作系統(tǒng)。手機(jī)的特性,就是應(yīng)該能隨時在未完成目前動作的時候,暫停正在使用的功能,切換到接電話、接收短信模式,而且在接完電話回到應(yīng)用程序時,還希望能看到一樣的內(nèi)容?,F(xiàn)在用戶使用智能手機(jī),大多已習(xí)慣使用多工的作業(yè)系統(tǒng)(如Windows Mobile),可以在用手機(jī)聽音樂的同時,執(zhí)行其他多個程序。同時執(zhí)行多個程序有它的明顯好處,但也有它的缺點(diǎn)。每多執(zhí)行一個應(yīng)用程序,就會多耗費(fèi)一些系統(tǒng)內(nèi)存,而手機(jī)里的內(nèi)存是相當(dāng)有限的。當(dāng)同時執(zhí)行的程序過多,或是關(guān)閉的程序沒有正確釋放掉內(nèi)存,系統(tǒng)運(yùn)行時就會覺得越來越慢,甚至不穩(wěn)定。為了解決這個問題,Android引入了一個新的機(jī)制即生命周期。Android應(yīng)用程序的生命周期是由Android框架進(jìn)行管理,而不是由應(yīng)用程序直接控制。通常,每一個應(yīng)用程序(入口一般會是一個活動的onCreate方法),都會占據(jù)一個進(jìn)程。當(dāng)系統(tǒng)內(nèi)存即將不足的時候,會依照優(yōu)先級自動進(jìn)行進(jìn)程的回收。不管是使用者或開發(fā)者,都無法確定應(yīng)用程序何時會被回收。關(guān)于進(jìn)程的生命周期將在下一節(jié)中介紹,本節(jié)主要介紹活動的生命周期。一個活動類別除了OnCreate方法之外,還預(yù)先定義了onPause(暫停)、OnResume(繼續(xù))等的基本方法,當(dāng)從一個活動切換到另一個活動的時候,原來的活動將經(jīng)過一連串的狀態(tài)改變。開發(fā)者可以在程序中添加一些各狀態(tài)相對應(yīng)的流程,每次活動狀態(tài)改變時,就會執(zhí)行相對應(yīng)的流程。要讓用戶有好的使用體驗,活動需要在各個周期中負(fù)責(zé)保管狀態(tài)、恢復(fù)狀態(tài)、傳送資料等工作。 堆棧管理狀態(tài)Android的虛擬機(jī)是使用堆棧管理。主要有四種狀態(tài):(l)活動狀態(tài)活動狀態(tài)是指用戶啟動應(yīng)用程序或活動后,活動運(yùn)行中的狀態(tài)。在Android平臺上,同一個時刻只會有一個活動處于活動或運(yùn)行狀態(tài)。其他的活動都處于未啟動、停止或是暫停的狀態(tài)。(2)暫停狀態(tài)暫停狀態(tài)是指當(dāng)活動暫時暗下來,退到背景畫面的狀態(tài)。當(dāng)警告對話框或電話來了時,都會讓原來運(yùn)行的活動退到背景畫面。新出現(xiàn)的警告對話框等界面元件蓋住了原來的活動畫面?;顒犹幵跁和顟B(tài)時,用戶無法與原活動互動。(3)停止?fàn)顟B(tài)停止?fàn)顟B(tài)是指有其他活動正在執(zhí)行,而這個活動己經(jīng)離開屏幕,不再動作的狀態(tài)。通過按返回鍵,可以調(diào)出所有處于停止?fàn)顟B(tài)的應(yīng)用程序列表。處于停止?fàn)顟B(tài)的活動,還可以通過通知來喚醒。(4)已回收或未啟動狀態(tài)已回收或未啟動狀態(tài)是指活動尚未被啟動、已經(jīng)被手動終止或己經(jīng)被系統(tǒng)回收的狀態(tài)。要手動終止活動,可以在程序中調(diào)用finish方法。如果是被系統(tǒng)回收,可能是因為內(nèi)存不足了,所以系統(tǒng)根據(jù)內(nèi)存不足時的回收規(guī)則,將處于停止?fàn)顟B(tài)的活動所占用的內(nèi)存回收。Activity startsActivity is shut downActivity is runningProcess is killedonCreate()onStart()onResume()onPause()New Activity is startedYour Activity is no longer visibleonStop()onDestory()User navigates back to your activityOther applications need memoryYour Activity es to the foregroundYour Activity es to the foreg
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1