【正文】
e r a p p l i c a t i o n n e e d m e m o r yO n R e s t a r t ( )Y o u r A c t i v i t y c o m e s t o t h e f o r e g r o u n dY o u r A c t i v i t y c o m e s t o t h e f o r e g r o u n d 圖 22 Activity 狀態(tài)變換路徑圖 Intent Receiver Intent Receiver是用于對(duì)外部事件的響應(yīng),當(dāng)外部事件發(fā)生時(shí),會(huì)使用 Notification Manager通知用戶。在應(yīng)用中,我們可以以兩種形式來(lái)使用 Intent:直接 Intent,指定了 ponent屬性的 Intent,通過(guò)指定具體的組件類,通知應(yīng)用啟動(dòng)對(duì)應(yīng)的組件。根據(jù) Intent 的描述,負(fù)責(zé)找到對(duì)應(yīng)的組件,將 Intent傳遞給調(diào)用的組件并完成組件的調(diào)用。 活動(dòng)之間的切換 Android使用了 Intent類來(lái)實(shí)現(xiàn)活動(dòng)之間的切換工作。在這段時(shí)間內(nèi)活動(dòng)處于其它所有活動(dòng)之前,并與用戶進(jìn)行交互。 onStart()和 onStop()方法可以多次調(diào)用,因?yàn)榛顒?dòng)隨時(shí)可以在可見(jiàn)和隱藏之間進(jìn)行轉(zhuǎn)換。在這段時(shí)間內(nèi),即使活動(dòng)不與用戶進(jìn)行交 互,用戶也可以在屏幕上看到它。在onCreate()中進(jìn)行所有初始化,在 onDestroyO時(shí)進(jìn)行清理工作,釋放資源。當(dāng)一個(gè)新的活動(dòng)啟動(dòng)后,被放到了棧頂,成為了運(yùn)行活動(dòng),而新活動(dòng)之前的活動(dòng)在活動(dòng)棧里總位于新活動(dòng)之下,直到新的活動(dòng)退出才重新回到前臺(tái) [13]。 Activity Activity是構(gòu)成應(yīng)用程序中最重要的構(gòu)造塊, 在 Android應(yīng)用程序中,幾乎都是通過(guò) Activity來(lái)與用戶進(jìn)行交互,所以 Activity主要負(fù)責(zé)的就是創(chuàng)建與用戶進(jìn)行交互的顯示窗口,你可以在這些窗口里通過(guò)調(diào)用 setContentView(View)方 法來(lái)顯示你自己的用戶界面。在應(yīng)用程序中使用時(shí),需要在配置文件 AndroidMainfest. xml中進(jìn)行配置。它提供諸如內(nèi)存管理、進(jìn)程管理、設(shè)備驅(qū)動(dòng)等服務(wù),同時(shí)也是手機(jī)軟硬件的連接層,提供了一個(gè)屏蔽層用于屏蔽硬件和上層軟件 [16]。 Dalvik虛 擬機(jī)依賴于底層 Linux內(nèi)核提供的功能,滁州學(xué)院 畢業(yè)論文 8 如線程機(jī)制,和內(nèi)存管理機(jī)制等。這是被優(yōu)化過(guò)的最小內(nèi)存依賴的格式。所有的 Android 應(yīng)用都運(yùn)行在它自己的進(jìn)程里,該進(jìn)程是一個(gè) Dalvik 虛擬機(jī)的實(shí)例, Dalvik被設(shè)計(jì)成能在一臺(tái)設(shè)備上高效的運(yùn)行多個(gè)虛擬機(jī)實(shí)例。這些函數(shù)庫(kù)包括:標(biāo)準(zhǔn) C 函數(shù)庫(kù)、媒體功能庫(kù)、瀏覽器引擎、 2D 和 3D圖形庫(kù)、基于 WEB 應(yīng)用的的安全協(xié)議 SSL、用于點(diǎn)陣和矢量字體渲染的 FreeType 以及 SQLite 引擎等。 Android本身已在其框架中提高了許多的組件供應(yīng)用程序調(diào)用,當(dāng)然開(kāi)發(fā)者也開(kāi)放新的組件,并將組件放入應(yīng)用程序框架中,以供自己和其它應(yīng)用程序調(diào)用。 滁州學(xué)院 畢業(yè)論文 7 圖 21 Android 架構(gòu)圖 關(guān)鍵應(yīng)用程序 Android 平臺(tái)內(nèi)包含一些關(guān)鍵應(yīng)用程序,如郵件收發(fā)客戶端程序、短信收發(fā)程序、日 歷和網(wǎng)頁(yè)瀏覽器等,開(kāi)發(fā)者可以在其平臺(tái)上開(kāi)發(fā)更多有特色的應(yīng)用程序 ,所用開(kāi)發(fā)語(yǔ)言是 Java。通過(guò)編譯基于框架的應(yīng)用程序可以降低開(kāi)發(fā)負(fù)荷。當(dāng)前活動(dòng)程序可以使用 Context. StartService()開(kāi)啟一項(xiàng)后臺(tái)服務(wù) , 還可以通過(guò) Context. bindService()與后臺(tái)服務(wù)通信 [14]。其中 , Uri標(biāo)明了 ContentProvider存儲(chǔ)的數(shù)據(jù)類型 , 在執(zhí)行訪問(wèn)方法時(shí)都需依據(jù) Uri作為路徑標(biāo)識(shí)來(lái)確定要訪問(wèn)哪個(gè) ContentProvider。常用的 Intent方法有 intent() (構(gòu)造 intent)、 addcategory() (添加 intent類型 )、 getAction()(獲取 intent動(dòng)作 )、 getData()(獲取 intent數(shù)據(jù) )等。 Intent 最重要的作用還是加載activity, 它是不同 activity 間的橋梁。 View也包含一些子類 , 如 : TextView(布局文件中的文本顯示 )、 EditText(布局文件中的文本編輯 )、 Button(按鈕 )、 ListView(顯示列表 )。 圖像顯示 View: View是最基本的 UI 構(gòu)件 , 它在屏幕中占據(jù)一個(gè)矩形區(qū)域可用來(lái)顯示文本、圖滁州學(xué)院 畢業(yè)論文 6 像等內(nèi)容 , 還可完成圖像事件處理。 Activity具有生命周期 , 它包含運(yùn)行、暫停、停止 等幾個(gè)狀態(tài) , 狀態(tài)間的轉(zhuǎn)換可通過(guò)調(diào)用 onCreate()、 onStart()、 onRestart()、 onResume()、 onFreeze()、 onPause()、 onStop ()、 onDestory()等方法來(lái)實(shí)現(xiàn)。 Android 應(yīng)用程序以各種組件 (API)為基礎(chǔ) , API 是 Android 軟件平臺(tái)的重要組成部分 , 也是開(kāi)發(fā) Android應(yīng)用的關(guān)鍵所在 [12]。 Java程序運(yùn)行環(huán)境: Android的 Java程序運(yùn)行環(huán)境包含一組 Java核心函數(shù)庫(kù)及 Dalvik 虛擬機(jī) ,它們有效地優(yōu)化了 Java程序的運(yùn)行過(guò)程。 C/C++函數(shù)庫(kù): Android應(yīng)用程序框架之下是一套 C/C ++函數(shù)庫(kù) , 它們服務(wù)于 Android應(yīng)用程序組件 , 其功能通過(guò)組件間接提供給開(kāi)發(fā)者。 應(yīng)用程序框架及組件: Android 應(yīng)用程序開(kāi)發(fā) 基于框架和組件。 Android軟件平臺(tái)主要由五部分構(gòu)成 , 它們分別是 :關(guān)鍵應(yīng)用程序、應(yīng)用程序框架和組件、 C /C ++函數(shù)庫(kù)、 Java程序運(yùn)行環(huán)境、優(yōu)化了的 Linux內(nèi)核。 Android它的開(kāi)放性就優(yōu)于其它 封閉式的手機(jī)系統(tǒng),因此,任何人都可能根據(jù)自己的喜好將手機(jī)系統(tǒng)中的所有功能重新編寫。平臺(tái)上的應(yīng)用程式可相容于各種型號(hào)的 Android 手機(jī),免去為各種不同手機(jī)機(jī)型開(kāi)發(fā)的困擾。只要廠商有能力,可以在這個(gè)平臺(tái)上自由加入特有的裝置或功能,不受手機(jī)作業(yè)系統(tǒng)廠商的限制 [6]。 對(duì)于設(shè)備制造商來(lái)說(shuō), Android是一個(gè)免費(fèi)的平臺(tái)。最上層是各種應(yīng)用軟件,包括通話程滁州學(xué)院 畢業(yè)論文 5 序,短信程序等,應(yīng)用軟件則由各公司自行開(kāi)發(fā),以 Java作為編寫程序的一部分, 不存在任何以往阻礙移動(dòng)產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙 。底層以 Linux內(nèi)核工作為基礎(chǔ),由 C語(yǔ)言開(kāi)發(fā),只提供基本功能 。于 2020年 11月 5日宣布的基于 Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng)的名稱,該平臺(tái)由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,號(hào)稱是首個(gè)為移動(dòng)終端打造的真正開(kāi)放和完整的移動(dòng)軟件。 本文詳細(xì)的提出了軟件的架構(gòu),以及通訊錄的設(shè)計(jì)方案;采用 Java 開(kāi)源的 JAR包對(duì) HTML文件進(jìn)行分析和獲取圖片和文字信息;對(duì)各個(gè)界面的布局和實(shí)現(xiàn)方式進(jìn)行詳細(xì)說(shuō)明; 對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)模塊進(jìn)行了詳盡的需求分析,經(jīng)分析 得到數(shù)據(jù)庫(kù)設(shè)計(jì)模塊 ,它主要完成用戶對(duì)已經(jīng)獲取的內(nèi)容的存儲(chǔ),刪除和查詢等操作;運(yùn)用 Android提供的各種組件設(shè)計(jì)和實(shí)現(xiàn)很好的 UI效果,實(shí)現(xiàn)很好的用戶體驗(yàn);詳細(xì)介紹了該軟件的性能優(yōu)化。 本文結(jié)構(gòu) 本文首先給出了系統(tǒng)的研究背景,對(duì)當(dāng)前 手機(jī)通訊錄 的發(fā)展現(xiàn)狀做了簡(jiǎn)單的介紹。說(shuō)到保存,不得不說(shuō)得是 保存 信息 涉及 添加新聯(lián)系人的頭像,姓名,手機(jī)號(hào)碼,辦公室電話,家庭電話,職務(wù) 職稱,單位名稱,地址,郵政編碼, Email,其他聯(lián)系方式,備注這些信息 。其中包括了 2個(gè) Button,分別實(shí)現(xiàn)了不同的功能。 本設(shè)計(jì)主要是采用 Android的 View框架編寫,部分框架運(yùn)用 Android中的其他組件。 主要工作和方法 在此背景下,開(kāi)發(fā)的基于 Android手機(jī)通訊錄具有十分重要的意義。 職業(yè)專家分析說(shuō),由于目前 Android技術(shù)較新,無(wú)論是相關(guān)書籍、培訓(xùn)還是大學(xué)教育,都處于初級(jí)階段,因此 Android人才短期將供不應(yīng)求。 滁州學(xué)院 畢業(yè)論文 4 從人才需求類型來(lái)看,目前對(duì) Android人才需求一類是偏向硬件驅(qū)動(dòng)的 Android人才需求,一類是偏向軟件應(yīng)用的 Android人才需求。隨著應(yīng)用商店的不斷發(fā)展和開(kāi)發(fā)者的涌入, Android平臺(tái)的應(yīng)用資源優(yōu)勢(shì)正在逐步的擴(kuò)大。各大 Android應(yīng)用商店呈現(xiàn)百花齊放的態(tài)勢(shì)。在這一過(guò)程中 Android系統(tǒng)因多方面因素逐漸受到各方的青睞。 移動(dòng)互聯(lián)網(wǎng)的蓬勃發(fā)展促使手機(jī)終端產(chǎn)業(yè)鏈變化,應(yīng)用和服 務(wù)逐漸成為競(jìng)爭(zhēng)的焦點(diǎn)。 前景優(yōu)勢(shì) 較之 Symbian 用戶體驗(yàn)較差 , 系統(tǒng)較為封閉,支持的應(yīng)用較少 和 WM 系統(tǒng)對(duì)終端廠商來(lái)講引入成本較為昂貴,娛樂(lè)性平平。 然而 現(xiàn)在很多通訊錄一味追求外觀花哨,功能繁雜,對(duì)于大多數(shù)用戶,許多功能用不上,形同虛設(shè)。 又其次,因?yàn)槭謾C(jī)是隨身攜帶的通訊工具,這與記事本相比將在一定程度上保障 了 聯(lián)系人信息的安全性,相對(duì)避免了個(gè)人隱私信息外泄從而帶來(lái)的損失。針對(duì)性的分門別類,使系統(tǒng)具有了方便了機(jī)主的存儲(chǔ)和快速查閱優(yōu)勢(shì)功能,大大減少了在電話簿,名片上機(jī)械翻閱查找過(guò)程的時(shí)間。根據(jù)市場(chǎng)需求,手機(jī)通訊錄管理系統(tǒng)所記錄的信息一般分為個(gè)人、商業(yè)、辦公三類。 Sullivan的王煜全也曾多次強(qiáng)調(diào)過(guò)手機(jī)通訊錄是一塊顛覆性創(chuàng)新的金礦,是創(chuàng)業(yè)者們創(chuàng)新的絕佳平臺(tái) 。 另外,不同于微博,社交網(wǎng)站,手機(jī)通訊錄是完全屬于用戶的,而不隸屬于某個(gè)特定公司或是服務(wù),只要獲得用戶的認(rèn)可,即使不是大公司也可以借此迅速建立起一個(gè)巨大的關(guān)系網(wǎng)絡(luò)。 在這個(gè)人與人關(guān)系愈加密切的時(shí)代,“通訊”成了生活中的必需品。 滁州學(xué)院 畢業(yè)論文 3 生活在信息高速發(fā)展的今天,智能手機(jī)的普及己經(jīng)是不可改變的趨勢(shì)。對(duì)于手持裝置的開(kāi)發(fā)者來(lái)說(shuō), Android 是個(gè)先進(jìn)的平臺(tái)。對(duì)硬體開(kāi)發(fā)廠商 來(lái)說(shuō),Android 是個(gè)開(kāi)放的平臺(tái)。 Android 是一個(gè)基于 Linux 核心 (kernel)的開(kāi)放手機(jī)平臺(tái)作業(yè)系統(tǒng),與 Windows Mobile、 Symbian 等手機(jī)作業(yè)系統(tǒng)處在同一級(jí)別,其中占有開(kāi)放源代碼優(yōu)勢(shì)的 Android系統(tǒng)有最大的發(fā)展前景 [5]。 隨著 Android平臺(tái)的擴(kuò)張 , Android開(kāi)發(fā)工程師將成為 3G行業(yè)炙手可熱的崗位之一。 目前中國(guó)擁有世界上最大的手機(jī)用戶群,再加上 3G的推出對(duì)整個(gè)行業(yè)的巨大推動(dòng)作用,全世界所有大中小型手機(jī)制造商幾乎都在招聘 Android工程師。 另一方面,由于國(guó)內(nèi)政策的限制,導(dǎo)致 Android的部分功能 (如 Android market)在國(guó)內(nèi)無(wú)法正常使用,目前常用的解決方法是使用類似 A8VPN的 VPN服務(wù)來(lái)訪問(wèn)。國(guó)內(nèi)廠商和運(yùn)營(yíng)商也紛紛加入了 android陣營(yíng),包括中國(guó)移動(dòng),中國(guó)聯(lián)通,中興通訊,華為通訊,聯(lián)想等大企業(yè),同時(shí)不僅僅局限于手機(jī),國(guó) 內(nèi)廠家也陸續(xù)推出了采用 Android系統(tǒng)的 MID產(chǎn)品[2]。 從用戶的角度考量,Android 良好的發(fā)展前景主要源于優(yōu)秀的用戶體驗(yàn)和高性價(jià)比這兩個(gè)方面。 移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展,終端 +應(yīng)用的趨勢(shì)逐漸成為主流 。s new opensource mobile operating system based on the Linux platform Android system, the use of the Java language, the Eclipse development tools on the code of the contacts to write. A preliminary study on the Android platform, system architecture and application designbased Android contacts. This contacts, including storage, delete, modify, phone calls, sent messages, and other functions. Android development platform is a mobile phone cool application of the best one of the experimental field, through the design, I have to learn in new ways and creative personality to the interpretation of the hands of mobile applications, the software Android provides a variety of groups interface design to achieve a good user experience. Key words : Android; java; contacts; phone; Interface 滁州學(xué)院 畢業(yè)論文 2 1 緒論 研究背景 Google于 2020年 11月 5日宣布推出基于 Linux平臺(tái)的開(kāi)源手機(jī)操作系統(tǒng) Android。 Android 開(kāi)發(fā)平臺(tái)是手機(jī)炫酷應(yīng)用最好的實(shí)驗(yàn)場(chǎng)之一,通過(guò)此次設(shè)計(jì),我要學(xué)會(huì)以全新的方式和富