Linux系統(tǒng)下的Android開發(fā)環(huán)境搭建_第1頁
Linux系統(tǒng)下的Android開發(fā)環(huán)境搭建_第2頁
Linux系統(tǒng)下的Android開發(fā)環(huán)境搭建_第3頁
Linux系統(tǒng)下的Android開發(fā)環(huán)境搭建_第4頁
Linux系統(tǒng)下的Android開發(fā)環(huán)境搭建_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、Linux 系統(tǒng)下的 Android 開發(fā)環(huán)境搭建1簡介 22版本 23系統(tǒng)結(jié)構(gòu) 24開發(fā) 44.1 應(yīng)用開發(fā) 知識準(zhǔn)備 環(huán)境搭建 4.4.2 系統(tǒng)開發(fā) 知識準(zhǔn)備 環(huán)境搭建 (32 位) 環(huán)境搭建 (64 位) 典型示例 1.0.1簡介An droid (讀音? ? ndr?d)是Google主持開發(fā)的開源移動平臺。整個平臺包括操作系統(tǒng)、中間件、虛擬機、應(yīng)用框架、應(yīng)用。該平臺最初是作為智能手機操作系統(tǒng)開發(fā)的,隨著發(fā)展,通過移植和修改,也可用于平板電腦和其他手持設(shè)備。2版本An droid的版本周期約為6個月

2、。已發(fā)布(截至2010年10月)的主要版本有 1.0、1.1、1.5、1.6、2.1、2.2。1.0、1.1、1.5 (Cupcake)、1.6(Donut)已過時,新系統(tǒng)不應(yīng)使用;2.1代號Eclair,是2.0和2.01的升級版,取代后兩者,穩(wěn)定版;2.2代號Froy 0,為目前最新版,不斷升級中。支持Flash,詳見An droid 2.2Platform Highlights ;3.0代號Gingerbread,計劃中的版本,全新的UI、游戲性能,可能支持視頻 聊天;3.5代號Honeycomb,計劃中的版本,有最低硬件要求,用于平板電腦。 版本代號即提取源碼時使用的分支名。3系統(tǒng)結(jié)構(gòu)

3、An droid結(jié)構(gòu)如圖:ApplicationsHomeContactsPhoneBrowserApplication Framew口珂您Activity ManagerWindowManagerConteni ProvicfenView SjntefTiTelephonyResourceLocmcinNctificaacfiPackage ManagerManajg?erManagerManagerManagerAfSlD CHE) R U NTIMESurface Mana.gerOpenGL I ESSGLLibrariesMediciFrameworkFreelypeSSLSQLit

4、cVVfebKiilibcCore LibrariesMacnincLINUX KERNELDkplayDriverKieypad DriverCamera DriverWiFi DriverFfash MemoryDriverAudioDriYBrsBinder (IPC)DriverPowerManagcfinent1:應(yīng)用Java開發(fā),基于An droid應(yīng)用是一個個獨立的程序,如瀏覽器、計算器、游戲等。應(yīng)用使用SDK。2:應(yīng)用框架是一些基礎(chǔ)組件,供上層應(yīng)用所調(diào)用,可以在多個應(yīng)用之間共享的功能。包括通知、視圖、 資源管理等。3:本地庫(native)主要由C/C+庫組成。4: Dalvi

5、k虛擬機與核心庫An droid應(yīng)用使用Java語言開發(fā),但并非運行于Java虛擬機之上,而是對.java文件進行反編譯-重編譯而成dex文件,運行在 Dalvik虛擬機上。An droid核心庫實現(xiàn)了大部分 Java5 SE的庫,但不包括 Swing等不使用于 An droid的庫,另 外還添加了一些專用于An droid的庫。5: Linux 內(nèi)核An droid使用標(biāo)準(zhǔn)Linux內(nèi)核2.6.32 ( 2.2平臺),再加上一些 An droid專用驅(qū)動。各種硬件 驅(qū)動在此定義。4開發(fā)應(yīng)用開發(fā)http:developer.a 也稱為An droid SDK開發(fā)。開發(fā)環(huán)境 Win dows/M

6、ac/Li nux皆可。知識準(zhǔn)備應(yīng)用開發(fā)使用Java語言。Java語言是參考C+而制定的,學(xué)習(xí)Java語言之前,若曾進行過C+開發(fā),應(yīng)再溫習(xí)一遍C+的語法、類、類繼承、模板等,有利于快速掌握J(rèn)ava中的相似部分,且不容易混淆兩者的區(qū)別。若沒有C+基礎(chǔ),可直接學(xué)習(xí) Java語言及Java SE庫。學(xué)習(xí)Java語言時,可略過 Swi ng界面學(xué)習(xí),因為 An droid使用另一套UI庫。環(huán)境搭建 Eclipse使用Eclipse 3.5.2。3.6目前與ADT不兼容,不能使用。需下載包含eclipse jdt的版本,推薦:/dow nl oads/pack

7、ages/eclipse-ide-java-developers/galileosr2安裝:Eclipse解壓后可以直接使用。(2) JDK版本5或6都可。下載地址 下載版文檔 在線文檔 an droid sdk ndex.html安裝:a) 解壓到一個目錄下,例如 C:Program Filesa ndroid-sdk-w in dows;b) 在環(huán)境變量 PATH 中添力卩tools目錄, 例女口 C:ProgramFilesandroid-sdk-windows'tools; 運行目錄下的 sdk setup.exe(僅限 windows可用)添加組件,下載2.2版本。若連接失敗

8、,需選中Settings中的 Force https:/. sources to be fetched using http:/.;.注:應(yīng)用開發(fā)應(yīng)基于想支持的最低版本開發(fā),然后在所有后續(xù)版本中測 試。(4)Apache ant(可選)Apache Ant是將軟件編譯、測試、部署等步驟聯(lián)系在一起加以自動化的一個工具。Linux和Mac需要安裝1.6.5以上版本, Windows需要1.7或以上。最新版本為1.8.1。由于eclipse自帶1.7.1,可跳過此步驟。/b in dow nl oad.cgi安裝:a)解壓,如 C:Program Filesa

9、pache-ant-1.8.1b)新增一個環(huán)境變量 ANT_HOME,值為 C:Program Filesapache-ant-1.8.1c)環(huán)境變量PATH中添加ANT_HOME%bin(5)ADT此為An droid的Eclipse插件下載、安裝:a)在 Eclipse 菜單中選擇 Help Tnstall New Softwareb)點Add,隨便取名,女口 An droid Plugi n,地址填 https:/dl-ssl.google.eom/a ndroid/eclipse/ 若連接失敗,則改為 http:/dl- ndroid/eclipse/c)選擇Developer Too

10、ls,按提示進行安裝d)安裝完成后重啟Eclipsee)菜單中選擇 Window -Preferencesf)選擇An droid頁,首次打開會彈出是否搜集使用信息的提示框,這里有 點bug,需要關(guān)閉Preferences窗口才能點擊該提示框g)設(shè)置An droid頁中的SDK Locatio n,填入 An droid SDK所在路徑,如 C:Program Filesa ndroid-sdk-w in dows(6)NDK (可選)可在應(yīng)用中調(diào)用 C/C+本地庫 ndk/i ndex.html注意:使用NDK調(diào)用本地庫有性能損耗,不推薦系統(tǒng)開發(fā)h卄pWsource android com/

11、也稱 An droid Source 開發(fā)。目前只能在Linux下開發(fā)。進行系統(tǒng)開發(fā)的目的:在自有硬件系統(tǒng)上運行An droid,需要修改硬件驅(qū)動、硬件適配層添加或修改功能知識準(zhǔn)備根據(jù)開發(fā)的模塊,需要掌握C、C+、Java之一或多者。開發(fā)和移植內(nèi)核驅(qū)動使用C語言;本地庫使用C和C+語言;本地庫的JNI封裝用到C+和Java;應(yīng)用框架開發(fā)則完全基于 Java。環(huán)境搭建(32位)操作系統(tǒng)建議使用 Ubuntu10.4或10.10。如果是在虛擬機中使用,需要分配1.5GB的內(nèi)存和10GB以上的硬盤空間。以下以Ubuntu 32位10.4及froyo分支為例:(1)安裝必備工具:$ sudo apt-

12、get in stall git-core gnupg flex bis on gperf libsdl-dev libesdO-devIibwxgtk2.6-dev build-esse ntial zip curl lib ncurses5-dev zlib1g-dev可選工具:(用于查找內(nèi)存泄漏、棧崩潰、數(shù)組越界等)$ sudo apt-get in stall valgri nd安裝repoa)新建一個目錄作為安裝目標(biāo),如/bin, 表示個人目錄b)下載$ curl http:/a ndroid.git.ker /repo >/b in/repoc)$ chmod

13、a+x /bin/repo(3)JDK 5a)下載 network/java/javase/dow nloads/i ndex.htmlb)放到要安裝的目錄下,例如/binc)$ chmod +x jdk-1_5_0_22-li nux-i586.b ind)安裝:$ ./jdk-1_5_0_22-li nux-i586.b in(4)配置PATH (必須加到系統(tǒng)變量,加到用戶變量Eclipse不買賬)a)$ cd /etc$ sudo chmod a+w profileb)用gedit編輯profile,末尾加上(vusername潛換為你的用戶名): export JAVA_HOME=&q

14、uot;/home/<username>/bi n/jdk1.5.0_22"exportCLASSPATH=".:$JAVA_HOME/lib/dt.jar:$JA VA_HOME/lib/tools.jar" export PATH="$PATH:/home/<username>/bi n: $JAA_HOME/bi n"c)注銷后重登錄以生效一(5)下載 An droid sourcea)建立一個目錄,女口 an droidsourceb)進入該目錄$ repo init -u git:/a ndroid.git.k

15、er /platform/ma ni fest.git -b froyo 配置過程中需要輸入名字、郵箱獲取最新源碼$ repo sync總共2.1GB,大約要花半天時間若要獲取其他版本,參見 Usi ng Repo and Git 驗證Taga)導(dǎo)入校驗密鑰$ gpg -mport將以下內(nèi)容粘帖到命令行中-一BEGIN PGP PUBLIC KEY BLOCK-一Versio n: Gn uPG v (GNU/Li nux)mQGiBE nn WD4RBACt9/h4v9x nn GDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSVIFhp

16、HawsVAcFImi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw78tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABd ncwu5hOF9KXwCgkxMDu4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0ZwNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QcIzDviDyaTrkANjdYY7p2cq/HMdOY7LJIHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9 nTjSw

17、CXeJ nuyvoizI9/l1S5jU5SA/9Wwlps4SC84ieIlXiGWEqq6i6/sk4l9q1YemZF2XVVK nml1F4iCMtNKsR4MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6I/8zTpA+uUGapw4tWCp4o0dplvDPBEa9b/aF/ygcR8mh5hgUfpF9lpXdk nO sbKCvM9ISSfRciETykZc4wrRCVGhIlEFuZHJvaWQgT3BIbiBTb3VyY2UgUHJvamVjdCA8aW5pdGIhbC1jb250cmIidXRpb25AYW5kcm9pZC5jb20+iGAEExECAC

18、AFAk nn WD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIX gAAKCRDorT+BmrEOe N葉 AJ42Xy6tEW7r3KzrJx nRX8mij9z8tgCdFfQYiHpY ngkl2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAIQN4mWRhfzDOk/Rosdb0csAO/I8Kz0gKQPOfObtyYjvI8JMC3rmi+LIvSUT9806UphisyEmmHv6U8gUb/xHLIa nXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oC

19、JIDbkC2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtB nE411aMAN3qnAHBBMZzKMXLWBGWEOz nfRrn czl5p49i2YZJAjyX1P2WzmScK49CV82dzLo71M nrF6fj+Udtb5+OgTg7Cow+8PRaTkJEW5Y2JIZp nRUqOCYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/MpK+KMs/s3r6 nJr nYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7sKZ8IaHRARo nte394hidZzM5 nb6hQvp

20、Pjt2OIPRsyqVxw4c/KsjADtAuKW9/d8phbN8bTyOJo856qg4oOEzKG9eeF7oaZTYBy33BTL0408sEBxiMior6b8LrZrAhkqDjAvUXRwm/fFKgpsOysxC6xi553CxBUCH2omNV6Ka1LNMwzSp9ILz8jEGqmUtkBszwoG1S8fXgE0Lq3cdDM/GJ4QXP/p6LiwNF99faDMTV3+2SAOGvytOX6KjKVzKOSsfJQhNODIslw8hqJcOWISQQYEQIACQUCSedYRAIbDAAKCRDorT+BmrEOeCUOAJ9qmROIEXzeoxcdoa

21、fxqf6gZIJZIACgkWF7wi2YLW3Oa+jv2QSTIrx4KLM=Wi5D-一END PGP PUBLIC KEY BLOCK-一b) 按ctrl+D結(jié)束c) 驗證標(biāo)簽(若有需要)$ git tag -v tag name(7) 編譯命令行進入 source目錄,運行:make首次編譯約需2小時多,完成后目錄大小5.8GB(8) Eclipse注意:Eclipse僅是用來編輯源碼、驗證編譯,要生成真正可執(zhí)行的輸出,只 能通過命令行make編譯。a)下載:參見前文b)安裝,解壓即可c)命令行make編譯整個 An droid源碼d)命令行進入an droidsource目錄,輸

22、入以下:$ cp developme nt/ide/eclipse/.classpath .$ chmod u+w .classpathe)調(diào)整Java虛擬機heap大小,修改eclipse.ini文件,將-Xms40m-Xmx256m修改為-Xms128m-Xmx512mf)運行Eclipse,菜單中選擇File - New - Java Project,輸入項目名后,選擇 Create project from existing source選取 androidsouce根目錄,等待 Eclipse 解析完成即可。環(huán)境搭建(64位)注:目前 master的froyo源碼要求在64位操作系統(tǒng)

23、及Java 6下編譯。如果是在虛擬機中使用,需要分配1.5GB的內(nèi)存和10GB以上的硬盤空間。以下以Ubuntu 64位10.10及master源碼為例:(1)安裝必備工具:$ sudo apt-get in stall git-core gn upg flex bis on gperf build-esse ntial zip curl zlib1g-dev gcc-multilib g+-multilib Iibc6-dev-i386 lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readli ne5-dev l

24、ib32z-dev 配置X11庫$ sudo ln -s /usr/lib32/libX11.so.6 /usr/lib32/libX11.so安裝repoa)新建一個目錄作為安裝目標(biāo),如/bin,表示個人目錄b)下載$ curl http:/a ndroid.git.ker /repo >/b in/repoc)$ chmod a+x /bin/repo(3) JDK 6a)下載 network/java/javase/dow nloads/i ndex.htmlb)放到要安裝的目錄下,例如/binc)$ chmod +x jdk-6u22-li nux-i586.b i

25、nd)安裝:$ ./jdk-6u22-li nux-i586.b ine)配置PATH (必須加到系統(tǒng)變量,加到用戶變量Eclipse不買賬)$ cd /etc $ sudo chmod a+w profilef)用gedit編輯profile,末尾加上(vusername潛換為你的用戶名):export JAVA_HOME="/home/<username>/bi n/jdk1.6.0_22"exportCLASSPATH=".:$JAVA_HOME/lib/dt.jar:$JA VA_HOME/lib/tools.jar" export

26、PATH="$PATH:/home/<username>/bi n: $JAA_HOME/bi n"g)注銷后重登錄以生效一(4) 下載 An droid sourcea) 建立一個目錄,女口 an droidsourceb) 進入該目錄$ repo init -u git:/a ndroid.git.ker /platform/ma ni fest.git不帶參數(shù)-b為取master源碼配置過程中需要輸入名字、郵箱c) 獲取最新源碼$ repo sync總共2.1GB,大約要花半天時間若要獲取其他版本,參見 Usi ng Repo and Git

27、驗證Taga)導(dǎo)入校驗密鑰$ gpg -mport將以下內(nèi)容粘帖到命令行中-一BEGIN PGP PUBLIC KEY BLOCK-一Versio n: Gn uPG v (GNU/Li nux) mQGiBE nn WD4RBACt9/h4v9x nn GDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSV FhpHawsVAcFlmi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw7 8tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABd ncwu5hOF9KXwCg

28、kxMD u4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0Z wNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QclzDviDyaTrkANjdYY7p2cq /HMdOY7LJlHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9 nTjSwCXeJ nuyvoizl9/l1S5 jU5SA/9Wwlps4SC84iellXiGWEqq6i6/sk4l9q1YemZF2XVVK nml1F4iCMtNKsR4 MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6

29、l/8zTpA+uUGapw4tWCp4o0dplvDPBEa9 b/aF/ygcR8mh5hgUfpF9lpXdk nO sbKCvM9lSSfRciETykZc4wrRCVGhllEFuZHJv aWQgT3BlbiBTb3VyY2UgUHJvamVjdCA8aW5pdGlhbC1jb250cmlidXRpb25AYW5k cm9pZC5jb20+iGAEExECACAFAk nn WD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIX gAAKCRDorT+BmrEOe N葉 AJ42Xy6tEW7r3KzrJx nRX8mij9z8tgCdFfQYiHpY ngkl

30、2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAl QN4mWRhfzDOk/Rosdb0csAO/l8Kz0gKQPOfObtyYjvl8JMC3rmi+LlvSUT9806Up hisyEmmHv6U8gUb/xHLIa nXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oCJIDbkC2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtB nE411aMAN3qnAHBBMZzKMX LWBGWE0z nfRrn czl5p49i2YZJAjyX1P2WzmScK49CV82dzLo71M nrF6fj+Udtb5+ OgTg7Cow+8PRaTkJEW5Y2JIZp nRUq0CYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/M pK+KMs/s3r6 nJr nYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7s KZ8laHRARo nte394hidZzM5 nb

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論