摘 要: 分析了Android移動開發(fā)平臺架構(gòu)和該平臺的各個組成部分,在此基礎(chǔ)上給出了Android平臺架構(gòu)模型。鑒于Android平臺的開發(fā)環(huán)境搭建的復雜性,深入研究了其在Windows操作系統(tǒng)中的搭建過程,詳細地探討了Android應(yīng)用程序運行所需的虛擬機創(chuàng)建和配置,為應(yīng)用程序開發(fā)做好準備。
關(guān)鍵詞: Android; 平臺; 應(yīng)用程序; 架構(gòu)
中圖分類號:TP311.1 文獻標志碼:A 文章編號:1006-8228(2013)01-32-03
Introduction to Android application development environment in Windows
Zhang Yun
(School of electronics and information engineering, Gansu Lianhe University, Lanzhou, Gansu 730000, China)
Abstract: After analyzing the Android mobile development platform architecture and the platform components, the Android platform architecture model is introduced. In view of the complexity of the Android platform development environment, the construction process in Windows is studied. The virtual machine construction and configuration needed in running Android application are discussed, preparing for developing application programming.
Key words: android; platform; application; architecture
0 引言
2007年11月5日,美國谷歌公司宣布組建了一個全球性的聯(lián)盟組織——開放手機聯(lián)盟(Open Handset Alliance),當時共有34家終端和運營企業(yè)加入,主要包括一些手機制造企業(yè)、手機芯片廠商和移動運營公司。該聯(lián)盟將共同開發(fā)名為Android(安卓)的移動系統(tǒng),該移動系統(tǒng)是開放源代碼的[1]。
市場上第一款支持Android的手機是由HTC(宏達電)制造并由T-Mobile供應(yīng)的G1。這款設(shè)備從設(shè)想到推出花了大約一年的時間。為了鼓勵創(chuàng)新,谷歌公司舉辦了兩屆“Android開發(fā)者大賽”,為優(yōu)勝的參賽作品提供數(shù)百萬美金的獎勵。G1問世幾個月之后,就發(fā)布了Android Market,它使用戶可以瀏覽應(yīng)用程序,并且可以將應(yīng)用程序直接下載到他們的手機上。經(jīng)過大約18個月,一個新的移動平臺進入了公眾領(lǐng)域。
1 Android平臺架構(gòu)組成
Android系統(tǒng)架構(gòu)由五個部分組成,分別是:
⑴ LINUX KERNEL
LINUX KERNEL是一個抽象層,介于硬件和軟件之間,它隱藏了硬件上的細節(jié),為軟件提供核心的系統(tǒng)服務(wù),例如:內(nèi)存管理服務(wù)、安全服務(wù)和驅(qū)動模型等[2]。
⑵ LIBRARIES
LIBRARIES是C與C++庫的集合,供安卓系統(tǒng)的各個組件使用,通過APPLICATION FRAMEWORK(應(yīng)用程序框架)提供給開發(fā)者。一些核心庫有系統(tǒng)C庫、媒體庫、界面管理庫、LibWebCore庫、SG庫、3D庫、FreeType庫、SQLite庫等。
⑶ ANDROID RUNTIME
ANDROID RUNTIME是指安卓的運行,每一個安卓應(yīng)用程序是Dalvik虛擬機中的一個具體的實例,運行在其進程中[3]。
⑷ APPLICATION FRAMEWORK
APPLICATION FRAMEWORK指應(yīng)用程序框架,因為安卓是一個開放的開發(fā)平臺,開發(fā)者可以自由地開發(fā)各種應(yīng)用程序,而且也可以完全使用核心應(yīng)用程序所使用的框架APIs。
所有的應(yīng)用程序其實是一組服務(wù)和系統(tǒng),包括視圖(View)、內(nèi)容提供者(Content Providers)、資源管理器(Resource Manager)、通知管理器(Notification Manager)、活動管理器(Activity Manager)[4]。
⑸ APPLICATIONS
在安卓平臺上,裝配有一個核心應(yīng)用程序的集合,這些應(yīng)用程序都是用JAVA語言編寫的,主要有電子郵件、日歷、瀏覽器、設(shè)置、聯(lián)系人等。
2 Android架構(gòu)模型
Android平臺的架構(gòu)模型如圖1所示。
3 Windows下Android應(yīng)用程序開發(fā)
3.1 開發(fā)所需軟件和插件
在Windows下Android應(yīng)用程序的開發(fā)所需要用到的軟件和插件有以下。
⑴ JDK(JAVA development kit),JAVA開發(fā)工具包,可以在ORACLE的官方網(wǎng)站下載其最新的版本,URL:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u31-download-
1501634.html。
⑵ Android SDK(Android software development kit),Android軟件開發(fā)工具包,URL:http://dl.google.com/android/android-sdk_r16-windows.zip。
⑶ Eclipse IDE(Eclipse Integrated Development),Eclipse集成開發(fā)環(huán)境,URL:http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops/R-3.7.2-201202080800/eclipse-SDK-3.7.2-win32.zip。
⑷ ADT(Android Development Tools),Android開發(fā)工具插件,URL:http://developer.android.com/sdk/eclipse-adt.html或http://dl.google.com/android/ADT-16.0.1.zip。
3.2 搭建開發(fā)環(huán)境
⑴ 安裝JDK:下載JDK后運行jdk-6u31-windows-i586.exe安裝程序。對于初學者,可以按照安裝的默認選項安裝即可。安裝成功后,出現(xiàn)圖2所示的提示界面。
⑵ 解壓Android SDK:下載到對應(yīng)的Android SDK后,將其解壓到某一個目錄中,如將SDK解壓到D盤,路徑為D:\android-sdk-windows。
⑶ 解壓Eclipse IDE: Eclipse是綠色版的,不需安裝,直接解壓就可以使用。
⑷ ADT的安裝:ADT是一個工具,它可以連接SDK和Eclipse,幫助Eclipse找到SDK。
① 安裝過程:啟動Eclipse,選擇Help->Install New Software…,選擇圖3中的“Add…”按鈕,在彈出的對話框的Name選項中鍵入Android Plugin,如果是在線安裝,在Location選項中鍵入http://dl-ssl.google.com/android/eclipse/,如圖4所示;如果是離線安裝,則選擇“Archive…”按鈕,在彈出的文件對話框中找到ADT插件的壓縮包,選擇“OK”按鈕,然后在下面勾選Name中的選項即可。
② 測試ADT是否安裝成功:安裝完ADT后,重啟Eclipse,會彈出如圖5所示的對話框,選擇“Browse…”按鈕,在彈出的文件對話框中選擇Android SDK的目錄,選擇“Next>”按鈕,在之后的對話框中選擇默認選項,完成出現(xiàn)圖6所示的進度條,等進度條完成即可。之后選擇打開File->New,觀察有沒有Android Project選項,如果有則安裝成功,如果沒有則點擊Other…選項,在General選項下查看是否有Android選項,如果有則安裝成功,如果沒有則安裝失敗。
⑸ AVD(Android Virtual Device,Android 虛擬機)的創(chuàng)建:為了使開發(fā)的應(yīng)用程序能在其虛擬機上運行,需先創(chuàng)建一個虛擬機。
創(chuàng)建步驟:在Eclipse中,選擇“Window”->“AVD Manager”,彈出如圖7所示的對話框,右側(cè)點擊“New…”按鈕,在name選項中給AVD取個名稱,在Target選項中選擇“Android 2.1-API level 7”(SDK的版本不同,該選項的值也不同),設(shè)定SD card大小,其他選項默認,最后點擊“Create AVD”按鈕,完成Android虛擬機的創(chuàng)建。創(chuàng)建虛擬機后,如圖8所示,選擇該虛擬機,右側(cè)面板上點擊“Start…”->“Launch”,啟動虛擬機,如圖9所示。
至此,完成了Android應(yīng)用程序開發(fā)環(huán)境的搭建。
4 結(jié)束語
本文對Android的軟件架構(gòu)進行了介紹,Android的架構(gòu)是分層的,層次非常清晰,分工很明確[5]。Android本身是一套軟件堆疊(Software Stack),或稱為“軟件疊層架構(gòu)”,疊層主要分成三層:操作系統(tǒng)、中間件、應(yīng)用程序。在軟件架構(gòu)的基礎(chǔ)上給出了其應(yīng)用程序的構(gòu)成[6]。
Android平臺本身大量使用開源庫類,為開發(fā)人員提供了一個非常便捷的開發(fā)環(huán)境,在進行程序開發(fā)之前,應(yīng)先搭建好開發(fā)環(huán)境,因目前多數(shù)用戶使用Windows操作系統(tǒng),所以本文詳細介紹了在Windows下進行Android開發(fā)的前期準備工作。做好前期環(huán)境搭建可以推進智能手機程序的開發(fā)進程。
參考文獻:
[1] 楊文志.Google Android程序設(shè)計指南[M].電子工業(yè)出版社,2009.
[2] 楊豐盛.Android應(yīng)用開發(fā)揭秘[M].機械工業(yè)出版社,2010.
[3] Ed Burnette.Android基礎(chǔ)教程[M].人民郵電出版社,2009.
[4] 王向輝,張國印,沈浩.Android應(yīng)用程序開發(fā)[M].清華大學出版社,2010.
[5] Shane Conder,Lauren Drcey.Android移動應(yīng)用開發(fā)從入門到精通
[M].人民郵電出版社,2010.
[6] 勒巖,姚尚郎.Google Android開發(fā)入門與實戰(zhàn)[M].人民郵電出版社,2009.