- Android經(jīng)典應(yīng)用程序開發(fā)
- 韓超編著
- 10字
- 2019-01-09 15:18:38
第1章Android應(yīng)用開發(fā)基礎(chǔ)
1.1 Android應(yīng)用開發(fā)基礎(chǔ)概述
1.1.1 Android應(yīng)用開發(fā)的結(jié)構(gòu)
Android是Google開發(fā)的基于Linux平臺的、開源的智能手機操作系統(tǒng)。Android包括操作系統(tǒng)、中間件和應(yīng)用程序。OHA(Open Handset Alliance,開放手機聯(lián)盟)為Google與33家公司聯(lián)手為Android移動平臺系統(tǒng)的發(fā)展而組建的一個組織。
Android的開發(fā)者可以在完備的開發(fā)環(huán)境中進行開發(fā),Android的官方網(wǎng)站也提供了豐富的文檔、資料。這樣有利于Android相關(guān)程序開發(fā)和運行在一個良好的生態(tài)環(huán)境中。
Android應(yīng)用程序開發(fā)是Android開發(fā)中最上面的一個層次。Android應(yīng)用程序的基礎(chǔ)是Android提供的各個Java類,這些類也提供了Android平臺級的API。位于Android框架層之上的部分,為Android系統(tǒng)的應(yīng)用程序,它們通常被組織成Android應(yīng)用程序包(APK),可以運行于各個Android設(shè)備或者Android仿真器之上,如圖1-1所示。

圖1-1 Android應(yīng)用的開發(fā)結(jié)構(gòu)
Android應(yīng)用程序可以基于兩種環(huán)境來開發(fā):Android SDK和Android源代碼。Android SDK環(huán)境可以采用IDE的開發(fā)環(huán)境,方便開發(fā)的流程。而使用源代碼開發(fā)Android應(yīng)用程序則可以獲得更多的功能。
完全基于Android標(biāo)準(zhǔn)的API開發(fā)的Android應(yīng)用程序包,可以被稱為“Android經(jīng)典應(yīng)用程序”,這種程序具有標(biāo)準(zhǔn)的兼容性,一般可以任意運行于支持了某個級別API的Android系統(tǒng)之上。
1.1.2 Android應(yīng)用程序開發(fā)的目的
由于Android系統(tǒng)本身是一個開發(fā)的系統(tǒng),而且具有標(biāo)準(zhǔn)的API,因此Android應(yīng)用程序包的開發(fā)主要有以下兩種情況。
第一種:第三方應(yīng)用程序;
第二種:具體系統(tǒng)的應(yīng)用程序。
第一種情況是將某個具體的功能以應(yīng)用程序包(APK)的方式實現(xiàn),安裝到各個不同的Android設(shè)備上。以這種模式開發(fā)的應(yīng)用程序,就是第三方應(yīng)用程序包,其特點是同樣的一個應(yīng)用程序包可以運行于不同的目標(biāo)設(shè)備之上,因此尤其需要考慮兼容性問題。這種情況開發(fā)的應(yīng)用程序包可能出于以下幾種目的:發(fā)布到Market上可以作為交易的產(chǎn)品,某種功能的具體客戶端,作為廣告的載體,愛好者共享自己的開發(fā)程序。
第二種情況是隨著某個具體的系統(tǒng)(一般是某個Android設(shè)備)所實現(xiàn)的應(yīng)用程序包。這種情況實現(xiàn)的應(yīng)用程序包不需要放到其他Android系統(tǒng)上運行,因此不需要考慮兼容性問題,只要能在當(dāng)前系統(tǒng)中運行即可。另一方面,這種情況開發(fā)的應(yīng)用程序可能依賴于具體系統(tǒng)的特定功能。這種情況的目的是讓某個Android設(shè)備具有更多的功能。
無論是第三方應(yīng)用程序還是具體系統(tǒng)的應(yīng)用程序,都可以基于SDK或者源代碼兩種開發(fā)環(huán)境開發(fā)。相比較而言,后者使用源代碼環(huán)境開發(fā)的情況更多?;跇?biāo)準(zhǔn)的SDK開發(fā)或者基于源代碼但是只使用標(biāo)準(zhǔn)API的開發(fā)方式,屬于經(jīng)典Android應(yīng)用程序。與之相對,如果使用經(jīng)過改動的源代碼生成的非標(biāo)準(zhǔn)SDK,或者直接使用源代碼環(huán)境開發(fā),則可能使用到標(biāo)準(zhǔn)API以外的接口,這在帶來更多功能的同時,也帶來了兼容性的問題。
提示:從Android應(yīng)用程序開發(fā)的角度,無論使用何種環(huán)境(SDK或者源代碼),基于標(biāo)準(zhǔn)API開發(fā)的情況屬于通常情況,也是Android應(yīng)用程序開發(fā)的基本方式。
- LED封裝與檢測技術(shù)
- 教你檢修液晶顯示器
- 教你檢修液晶彩色電視機
- 5G網(wǎng)絡(luò)深度覆蓋技術(shù)基礎(chǔ)解析
- 數(shù)據(jù)通信原理與技術(shù)
- 數(shù)字平板電視機現(xiàn)場維修實錄
- 電子工程師必備——元器件應(yīng)用寶典
- 變頻技術(shù)一學(xué)就會
- 廈華/海爾新型彩色電視機速修圖解
- 電子技術(shù)基礎(chǔ)實驗與課程設(shè)計
- 高處作業(yè) 通信線路專業(yè)篇
- 軌道交通信號基礎(chǔ)設(shè)備應(yīng)用與維護
- LTE-V2X測試與仿真從入門到精通
- 開關(guān)電源設(shè)計與制作基礎(chǔ)
- 高速信號傳輸工程化技術(shù):概念與方法