摘 要: 分析了Android移動開發平臺架構和該平臺的各個組成部分,在此基礎上給出了Android平臺架構模型。鑒于Android平臺的開發環境搭建的復雜性,深入研究了其在Windows操作系統中的搭建過程,詳細地探討了Android應用程序運行所需的虛擬機創建和配置,為應用程序開發做好準備。
關鍵詞: Android; 平臺; 應用程序; 架構
中圖分類號: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日,美國谷歌公司宣布組建了一個全球性的聯盟組織——開放手機聯盟(Open Handset Alliance),當時共有34家終端和運營企業加入,主要包括一些手機制造企業、手機芯片廠商和移動運營公司。該聯盟將共同開發名為Android(安卓)的移動系統,該移動系統是開放源代碼的[1]。
市場上第一款支持Android的手機是由HTC(宏達電)制造并由T-Mobile供應的G1。這款設備從設想到推出花了大約一年的時間。為了鼓勵創新,谷歌公司舉辦了兩屆“Android開發者大賽”,為優勝的參賽作品提供數百萬美金的獎勵。G1問世幾個月之后,就發布了Android Market,它使用戶可以瀏覽應用程序,并且可以將應用程序直接下載到他們的手機上。經過大約18個月,一個新的移動平臺進入了公眾領域。
1 Android平臺架構組成
Android系統架構由五個部分組成,分別是:
⑴ LINUX KERNEL
LINUX KERNEL是一個抽象層,介于硬件和軟件之間,它隱藏了硬件上的細節,為軟件提供核心的系統服務,例如:內存管理服務、安全服務和驅動模型等[2]。
⑵ LIBRARIES
LIBRARIES是C與C++庫的集合,供安卓系統的各個組件使用,通過APPLICATION FRAMEWORK(應用程序框架)提供給開發者。一些核心庫有系統C庫、媒體庫、界面管理庫、LibWebCore庫、SG庫、3D庫、FreeType庫、SQLite庫等。
⑶ ANDROID RUNTIME
ANDROID RUNTIME是指安卓的運行,每一個安卓應用程序是Dalvik虛擬機中的一個具體的實例,運行在其進程中[3]。
⑷ APPLICATION FRAMEWORK
APPLICATION FRAMEWORK指應用程序框架,因為安卓是一個開放的開發平臺,開發者可以自由地開發各種應用程序,而且也可以完全使用核心應用程序所使用的框架APIs。
所有的應用程序其實是一組服務和系統,包括視圖(View)、內容提供者(Content Providers)、資源管理器(Resource Manager)、通知管理器(Notification Manager)、活動管理器(Activity Manager)[4]。
⑸ APPLICATIONS
在安卓平臺上,裝配有一個核心應用程序的集合,這些應用程序都是用JAVA語言編寫的,主要有電子郵件、日歷、瀏覽器、設置、聯系人等。
2 Android架構模型
Android平臺的架構模型如圖1所示。
3 Windows下Android應用程序開發
3.1 開發所需軟件和插件
在Windows下Android應用程序的開發所需要用到的軟件和插件有以下。
⑴ JDK(JAVA development kit),JAVA開發工具包,可以在ORACLE的官方網站下載其最新的版本,URL:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u31-download-
1501634.html。
⑵ Android SDK(Android software development kit),Android軟件開發工具包,URL:http://dl.google.com/android/android-sdk_r16-windows.zip。
⑶ Eclipse IDE(Eclipse Integrated Development),Eclipse集成開發環境,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開發工具插件,URL:http://developer.android.com/sdk/eclipse-adt.html或http://dl.google.com/android/ADT-16.0.1.zip。
3.2 搭建開發環境
⑴ 安裝JDK:下載JDK后運行jdk-6u31-windows-i586.exe安裝程序。對于初學者,可以按照安裝的默認選項安裝即可。安裝成功后,出現圖2所示的提示界面。
⑵ 解壓Android SDK:下載到對應的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>”按鈕,在之后的對話框中選擇默認選項,完成出現圖6所示的進度條,等進度條完成即可。之后選擇打開File->New,觀察有沒有Android Project選項,如果有則安裝成功,如果沒有則點擊Other…選項,在General選項下查看是否有Android選項,如果有則安裝成功,如果沒有則安裝失敗。
⑸ AVD(Android Virtual Device,Android 虛擬機)的創建:為了使開發的應用程序能在其虛擬機上運行,需先創建一個虛擬機。
創建步驟:在Eclipse中,選擇“Window”->“AVD Manager”,彈出如圖7所示的對話框,右側點擊“New…”按鈕,在name選項中給AVD取個名稱,在Target選項中選擇“Android 2.1-API level 7”(SDK的版本不同,該選項的值也不同),設定SD card大小,其他選項默認,最后點擊“Create AVD”按鈕,完成Android虛擬機的創建。創建虛擬機后,如圖8所示,選擇該虛擬機,右側面板上點擊“Start…”->“Launch”,啟動虛擬機,如圖9所示。
至此,完成了Android應用程序開發環境的搭建。
4 結束語
本文對Android的軟件架構進行了介紹,Android的架構是分層的,層次非常清晰,分工很明確[5]。Android本身是一套軟件堆疊(Software Stack),或稱為“軟件疊層架構”,疊層主要分成三層:操作系統、中間件、應用程序。在軟件架構的基礎上給出了其應用程序的構成[6]。
Android平臺本身大量使用開源庫類,為開發人員提供了一個非常便捷的開發環境,在進行程序開發之前,應先搭建好開發環境,因目前多數用戶使用Windows操作系統,所以本文詳細介紹了在Windows下進行Android開發的前期準備工作。做好前期環境搭建可以推進智能手機程序的開發進程。
參考文獻:
[1] 楊文志.Google Android程序設計指南[M].電子工業出版社,2009.
[2] 楊豐盛.Android應用開發揭秘[M].機械工業出版社,2010.
[3] Ed Burnette.Android基礎教程[M].人民郵電出版社,2009.
[4] 王向輝,張國印,沈浩.Android應用程序開發[M].清華大學出版社,2010.
[5] Shane Conder,Lauren Drcey.Android移動應用開發從入門到精通
[M].人民郵電出版社,2010.
[6] 勒巖,姚尚郎.Google Android開發入門與實戰[M].人民郵電出版社,2009.