胡清華 重慶育才成功學(xué)校
Android平臺(tái)屬于開源性質(zhì),有其自身的獨(dú)特優(yōu)勢(shì),主要包括以下幾個(gè)方面.1)更簡單.Android本身的開源決定了平臺(tái)本身在整個(gè)Internet網(wǎng)絡(luò)中的查詢和部署的實(shí)施,很多的技術(shù)相關(guān)人員可以熟練地運(yùn)用相關(guān)技術(shù)來編寫和開發(fā)開源軟件。2)非常靈活。Android平臺(tái)開源已經(jīng)使其具有靈活的特性,允許一些特殊的軟件獲得更加自由和個(gè)性化的研發(fā)空間使技術(shù)人員能夠按照公司自身的獨(dú)立情況完成個(gè)性化設(shè)計(jì),為企業(yè)獲得最佳經(jīng)濟(jì)效益的軟件.3)成本相對(duì)較低。在產(chǎn)品設(shè)計(jì)過程中,使用一些開源軟件,可以大大降低產(chǎn)品成本投入。
Android平臺(tái)應(yīng)用程序的開發(fā)應(yīng)基于其平臺(tái)功能的基本架構(gòu),根據(jù)Android平臺(tái)的層次結(jié)構(gòu)從下到上主要分為四個(gè)層次,首先是與硬件進(jìn)行直接交互的LinuxKernel層,這層別主要是各種設(shè)備驅(qū)動(dòng)程序,其次是Android類庫和運(yùn)行時(shí)庫文件,主要提供了Dalvik虛擬機(jī)以及核心庫運(yùn)行所必需的文件、同時(shí)還提供了類似于Sqlite數(shù)據(jù)庫支撐、OpenGL圖形渲染庫文件、SSL安全訪問控制等等;再次,即應(yīng)用程序框架,主要包括Activity、ViewSystem、Notification管理、Window管理等等。
通常而言,每個(gè)Activity對(duì)應(yīng)一個(gè)UI界面,UI設(shè)計(jì)有兩種方式,一種是通過XML顯示,另一種是通過代碼來顯示的方式。本文提出了XML格式的UI界面設(shè)計(jì),使開發(fā)人員能夠有效地將視圖層和代碼層分離開來,有利于開發(fā)人員開發(fā)UI層。
Service組件即服務(wù)組件,對(duì)應(yīng)于Activity組件,與Activity最大的區(qū)別是其運(yùn)行不可見。服務(wù)組件包括遠(yuǎn)程服務(wù)和本地服務(wù)是兩種類型的遠(yuǎn)程服務(wù)是獨(dú)立的進(jìn)程,即使在Activity被終止之后,這個(gè)服務(wù)仍然可以高度靈活地運(yùn)行。附著在主流程上的本地進(jìn)程,在一定程度上節(jié)省了系統(tǒng)資源。
安卓中廣播接受者組件的生命周期相對(duì)簡單,主要包括創(chuàng)建BroadcastReceiver對(duì)象、調(diào)用onReceive方法,廣播銷毀三個(gè)步驟。在Android中有三種類型的廣播,即常規(guī)廣播(所有廣播聽眾都可以接收廣播),異步廣播(打印輸出后仍然存在意向),以及有序廣播(通過廣播接收方優(yōu)先廣播接收)。
內(nèi)容提供者組件是Android平臺(tái)為開發(fā)者提供的在不同應(yīng)用程序之間共享數(shù)據(jù)的機(jī)制。以短信為例,通常需要選擇聯(lián)系人,這時(shí)Content Provider組件就可以提供極大的方便。安卓平臺(tái)給每一個(gè)資源都提供了資源名,并以URI的形式給出,其形式類似于“content://應(yīng)用程序的標(biāo)準(zhǔn)前綴/URI標(biāo)識(shí)/路徑/需要獲取的記錄的ID”,Conten Provider就是基于URI基礎(chǔ)進(jìn)行實(shí)現(xiàn)的。利用Content Provider進(jìn)行數(shù)據(jù)共享的時(shí)候主要通過其接口中的標(biāo)準(zhǔn)方法,onCreate、insert、delete、update、query等方法進(jìn)行操作。
安卓平臺(tái)一共提供了五中數(shù)據(jù)存儲(chǔ)形式,即Shared Preferences、SQLite、網(wǎng)絡(luò)、文件以及外儲(chǔ)。作為一個(gè)輕量級(jí)的RD數(shù)據(jù)庫,很少使用資源在Android平臺(tái)上扮演重要的存儲(chǔ)角色。利用Sqlite進(jìn)行數(shù)據(jù)存儲(chǔ)是非常好的一種選擇,通過簡單的步驟就可以完成新建,更新,查詢,刪除等操作,在利用Sqlite數(shù)據(jù)庫時(shí)主要是利用SQLiteOpenHelper中execSQL方法進(jìn)行SQL語句操作。除此之外,安卓平臺(tái)還有一個(gè)AHibernate進(jìn)行更加便捷的數(shù)據(jù)庫操作,直接將查詢結(jié)果進(jìn)行對(duì)象化處理,這與JavaWeb中常見的Hibernate框架有一定的相似性。另外,基于Android平臺(tái)的應(yīng)用開發(fā),以及布局設(shè)計(jì),數(shù)據(jù)顯示,網(wǎng)絡(luò)數(shù)據(jù)采集,傳感器數(shù)據(jù),GPS數(shù)據(jù)采集等諸多內(nèi)容都受到空間限制,本文不會(huì)做太多的介紹總之,使用Android平臺(tái)進(jìn)行應(yīng)用軟件開發(fā)主要是基于各個(gè)功能設(shè)計(jì)組件來滿足用戶需求。