Android開發奧秘:工具IDE,SDK,谷歌服務等一網打盡
譯文【51CTO譯文】當大家計劃采取行動,著手開發自己的第一款Android應用程序時,數量龐大、種類繁多的工具清單很可能成為橫亙在我們面前的第一道障礙。不過下載并準備Android開發環境的過程其實并不復雜,而這要歸功于便捷的一體式軟件捆綁包,它能幫助大家隨時使用大多數——即使還不是所有——開發工作中可能需要的工具。
下載并采用這種單一捆綁包的弊端在于,我們很可能搞不清楚自己的Android開發環境中包含有哪些具體工具,而且對很多朋友來說了解每款工具的實際作用也是項難度頗高的任務。
在今天的文章中,我們將揭開這層神秘的面紗,帶大家一同了解開發首款Android應用程序時將要用到的主流工具。對于那些希望利用額外功能對Android項目進行深入強化的朋友來說,后文將要介紹的Google Play Services概述同樣不容錯過——大家可以利用它為自己的應用程序添加Google+以及谷歌地圖等內容,并真正把開發成果轉化為實際收益。
不過在匯總自己的Android開導得工具包之前,大家首先需要作出一個重要決定——我們到底要利用哪種集成開發環境(簡稱IDE)來打造自己的應用程序?
1. Eclipse還是Android Studio?
直到不久之前,Eclipse與ADT(即Android開發工具)插件這一黃金組合仍然是Android應用開發領域的推薦環境。不過在谷歌I/O 2013大會上,谷歌顛覆了這一切、將其專門針對Android開發工作所設計的IDE方案Android Studio呈現在世人面前。
Android Studio的發布讓Android開發者的生活變得更為復雜,因為大家不得不首先對兩大IDE方案進行權衡利弊,看看如何選擇才能讓后續工作變得更為順暢。
在考慮到底使用Android Studio還是Eclipse作為自己的開發環境時,起到決定性作用的關鍵因素在于我們到底期望從IDE當中得到些什么。
用戶界面注重清晰的流程還是豐富的功能
Eclipse提供的通用開發環境能夠通過插件實現擴展,從而幫助大家在這同一套IDE當中利用不同編程語言開發出多種應用程序類型。
對于Android開發工作而言,我們可以利用Android開發工具或者簡稱ADT插件對Eclipse進行擴展。雖然ADT在設計思路上主要面向Android開發場景,但Eclipse卻并不是這樣——也就是說,后者當中包含大量與Android應用開發毫無關系的功能。
如果大家已經是經驗豐富的Eclipse用戶,那么很可能已經對Eclipse那功能豐富但卻略顯雜亂的用戶界面非常熟悉。不過如果各位才剛剛接觸Eclipse,則很可能需要花上一段時間來確定其中哪些內容有助于自己的Android開發工作、而哪些內容完全是在搞亂界面顯示效果。
在這方面,Android Studio相較于Eclipse擁有顯著優勢。Android Studio擁有一套主干式用戶界面以及簡約而不簡單的功能配置,雖然在數量上相對落后、但每一項功能都會切實幫助各位完成Android應用開發任務。
選擇成熟社區還是獨力單干
Eclipse是一套廣受贊譽的IDE,并擁有非常繁榮的社區體系,這意味著大家在需要幫助時可以獲得豐富而且及時的幫助信息——包括博文、教程、谷歌小組、視頻指南、論壇乃至廣泛的Eclipse ADT使用文檔。
相比之下,Android Studio在這方面則顯得比較被動。作為一個新興項目,Android Studio自然沒有時間建立起同樣豐富的輔助性資源。盡管一部分基于Eclipse的資源也同樣適用于Android Studio使用任務,但如果大家在使用Android Studio環境時碰到比較個別的問題,那么以Eclipse為核心的信息恐怕起不到什么指導作用。
堅實穩定還是新興技術
作為一套成熟的IDE,Eclipse的軟件表現非常穩定而且可靠,相比之下Android Studio目前尚處于早期預覽階段,大家很可能會在使用過程中遭遇各類錯誤以及功能缺失情況。
Android Studio擁有大家希望從全新IDE當中獲得的全部創新型功能,但這一切在早期預覽狀態的拖累下變得大打折扣。根據實際情況的不同,Android Studio正式版本的缺失有可能讓我們面臨兩難選擇。如果大家打算開發的是一個小型個人項目,那么漏洞與功能缺失也許還不足為慮。然而,如果大家需要的是一套能夠開發出對業務拓展工作至關重要的商用Android應用程序,那么Android Studio的早期預覽狀態意味著它恐怕不會成為最明智的選項。
大家對Gradle是否熟悉?
Android Studio配備有Gradle插件,也就是說只要我們選擇了這套IDE、那么最終肯定要利用Gradle對自己Android應用程序的構建、測試、發布以及部署進行自動化處理。
如果大家對Gradle感到陌生或者沒時間、沒興趣學習Gradle,那么繼續選擇Eclipse這條道路可能更合適,這是因為Gradle與Android Studio的銜接如此緊密、大家要使用任何一種其它構建工具都必然遇到極為糾結的狀況。
結論
“要Android Studio還是Eclipse?”這個問題沒有顯而易見的答案,實際選擇取決于一系列相關因素,例如大家對該軟件是否熟悉、是否有時間或者有意愿學習新技術再加上各位打算開發的Android應用程序類型等等。
舉例來說,如果大家有時間同時樂于學習新的技術方案、同時對Gradle很感興趣,那么Android Studio的贏面顯然會大大提高。然而,如果大家已經是一位資深Eclipse用戶,而且繁重的日常工作讓各位根本無暇涉足新IDE所設置的學習門檻,那么繼續使用Eclipse來完成開發也許是更為明智的決定。
無論大家到底是選擇Android Studio還是Eclipse與ADT插件的組合,在決定了自己的開發環境之后、接下來要面對工具集都是完全相同的——這就是Android SDK。
2. Android SDK是什么東東?
Android SDK由多種不同類型的工具所組成,從庫到源代碼再到示例項目等等,這一切都是創建Android應用程序所必需的資源。雖然對Android SDK所提供的全部內容作出介紹會遠遠超出本文的篇幅限制,但接下來我們仍要用簡短的語言概述一部分Android應用開發所必需且大家應當盡快熟悉的重要工具。
模擬器
Android SDK當中包含一款移動設備模擬器,它允許大家以多種設備平臺為基礎對自己的Android應用進行測試、同時又不必真正購買對應的設備產品。
通過工具名稱就能看出,模擬器的專長在于通過運行多種Android虛擬設備(簡稱AVD)配置方案來模擬不同各類的Android設備。在典型的Android項目生命周期當中,大家需要為該模擬器創建一系列AVD配置,每套配置都對應不同的Android設備。
AVD管理器
AVD管理器是我們創建、編輯、修復、刪除以及啟用AVD配置方案的平臺。AVD管理器還包含一套已知設備定義列表,這能大大簡化我們對尚不清楚其硬件與軟件規范的特定設備型號的模擬過程。
SDK管理器
Android SDK將各類工具、平臺、API以及其它組件獨立旋轉在不同的包當中,允許大家通過SDK管理器對其進行分別更新與下載。其中一些軟件包推薦使用,甚至有部分已經在我們下載Android SDK的同時就被安裝完成了,但也有很多軟件包屬于可選方案、只適合那些在開發特定Android應用程序時有意采用的朋友。
DDMS
Dalvik調試監控服務器或者簡稱為DDMS是一款調試工具,能夠執行多種調試任務,例如追蹤哪些對象正被分配到內存當中、哪些線程正處于運行狀態以及特定進程正在使用哪部分堆區內存。
DDMS當中還包含網絡使用情況詳情標簽,用于追蹤網絡請求并分析我們的應用程序正如何進行數據傳輸。盡管DDMS目前在Android Studio與Eclipse當中都能正常發揮全部作用,但其具體訪問方式卻有所區別。Eclipse用戶可以通過Window > Open Perspective > DDMS的順序訪問DDMS,而Android Studio用戶則需要點擊工具欄Monitor按鈕(該按鈕配有樸素的Android圖標)進行訪問。
Lint
Lint是一款代碼掃描工具,旨在通過檢查Android項目源文件中的漏洞與可資優化的部分改進我們編碼成果的結構質量。
盡管Lint被包含在Android SDK當中,但我們在使用Eclipse與Android Studio時、對其進行啟動的方式仍然有所區別。在Android Stuio當中,我們可以通過選定Analyze > Inspect Code來運行Lint。而在Eclipse方面,Lint會在我們對項目中的布局編輯器或者XML文件進行修改時自動運行。同樣,我們在導出項目時它也會加以運行。
Android調試橋
Android調試橋也被簡稱為adb,它允許我們通過直接在命令行中輸入指令的方式執行一系列調試操作。大家可以在官方Android說明文檔中找到adb命令的綜合列表(點擊此處查看)。
無論大家選擇了Android Studio還是Eclipse,都可以訪問全部前面提到的Android SDK工具。只不過根據IDE選擇的不同,其它一些可用工具包的種類可能有所區別。
#p#
3. Eclipse工具包
盡管屬于Android Studio的競爭對手,Eclipse所配備的ADT插件同樣擁有大量適用于Android開發者群體的功能。如果大家選擇Eclipse作為自己的IDE,則可以下載所有捆綁軟件包——其中包括Android SDK以及以下重要項目。
Eclipse
該IDE提供一套通用開發環境,大家可以利用不同插件對其進行定制。
ADT插件
Android開發工具插件利用Android特有的功能對Eclipse環境進行了擴展,其中包括能夠自動生成Android應用程序基礎文件結構的項目創建向導,能夠幫助大家為資源文件及Android manifest編寫有效代碼的定制XML編輯器等等。
ADT插件還提供一套面向多種SDK工具的圖形用戶界面,允許大家利用它對很多原本只能通過命令行使用的SDK工具進行訪問,其中包括Android調試橋以及DDMS——我們在前文中剛剛對二者進行過闡述。
將Eclipse與ADT插件組合設置為自己的開發環境非常簡單:
- 首先下載ADT軟件包。
- 下載完成之后,解壓該軟件包。
- 解壓完成后將其打開。ADT插件的名稱為adt-bundle,接下來的數字部分視軟件包版本而定。
- 打開Eclipse文件夾并雙擊Eclipse應用程序圖標,這樣Eclipse就將正式啟動。
- Eclipse當中保存我們已經創建的所有項目的位置被稱為workspace。在Windows系統中,其默認路徑為C:\Users\Name\Documents\workspace。如果需要,大家可以變更這一路徑并點擊OK確認。
Eclipse在啟動后,所有已經整合的ADT插件與Android SDK也將開始運行。這意味著在Eclipse啟動完成時,大家就可以著手創建自己的第一個Android應用程序了。
4. Android Studio工具包
盡管目前尚處于早期預覽版本,Android Studio仍然擁有大量極具吸引力的功能,更不用提谷歌的大力推動了。如果大家決定下載Android Studio軟件包,則需要額外獲取Android SDK與以下附加項目。
Android Studio
在集成開發環境的世界中,Android Studio擁有獨一無二的定義——它在設計思路上專門也僅僅面向Android應用程序的開發工作。
Gradle
Android Studio配備一款內置Android插件,也就是Gradle,并利用Gradle作為其創建系統。在Android Studio當中,大家可以利用Gradle執行多種任務,例如自定義、配置并以本地文件系統或者遠程文件系統為目的地對項目創建流程進行擴展或者管理其關聯性。
Gradle還能夠利用單一Android項目中的不同配置生成多種APK,從而幫助大家讓自己的開發成果支持盡可能多的實際設備類型。
如果大家決定使用Android Studio的早期預覽版本,可以點擊此處從Android開發者網站上下載其最新版本。在Windows系統中,啟動可執行文件來打開Android Studio即可開始我們的Android應用開發之旅。
5. Google Play Services
本文已經向大家介紹了Android SDK并說明了如何安裝并設置我們已經選定的IDE。不過,如果大家希望能為自己的用戶帶來更為豐富的使用體驗,那么也可以將Google Play Services添加到自己的開發環境中來。
Google Play Services是一套額外的可選方案,允許大家為自己的Android應用添加更多功能與特性。Google Play Services能夠為Android開發人員帶來諸多便利。下面我們就逐一對其進行解讀。
Google+
利用Google+內容讓我們的應用程序更加豐富。Google+平臺服務能幫助我們提供更富個性化的用戶使用體驗,方法很簡單——它能夠將Google+賬戶內的聯系人信息提取并交付給應用程序。舉例來說,大家的應用程序可以利用Google+信息向特定對象發送問候或者使用對方發布的Google+資料圖片作為其頭像。
除此之外,我們的應用程序也可以將信息推送至Google+當中。舉例來說,它允許用戶將自己的游戲最高分或者其它應用程序內部的成就信息發送Google+資料,或者分享給其他Google+聯系人。
谷歌地圖
在應用程序當中內置谷歌地圖內容,包括3D地圖、混合地圖甚至是谷歌街景內容。請注意,谷歌地圖Android API要求使用API密鑰,大家可以通過Google API控制臺來獲取。
Google Play應用程序內購機制
這項服務允許大家通過自己的應用程序銷售數字化內容,并借此將Android項目成果轉化為經濟收益。這些收費內容可以通過下載獲得,例如視頻、圖片或者其它虛擬內容,當然也可以是游戲的新關卡、解鎖新功能或者游戲內的道具——例如寶石以及額外的生命值等等。
Google Play全權負責這些交易的進行,因此大家不必費心自己設計付費驗證與價格計算功能。請注意,應用程序內購機制要求我們創建一套Google Play開發者控制臺賬戶以及Google Wallet商家賬戶。大家還需要安裝Google Play Billing庫。聽起來復雜,但實際操作也很簡單。大家只需啟動SDK管理器、打開Extras選項、選擇Google Play Billing庫并點擊安裝軟件包即可。
這還只是Google Play Services所能提供的一部分功能。大家可以點擊此處查看Android官方說明文檔以了解更多與Google Play Services相關的細節信息。
Before you can take advantage of Google Play Services, you need to download an additional package. You can do this following these steps:在大家充分享受Google Play Services帶來的便利之前,首先需要下載另一個額外軟件包。我們需要遵循以下三個步驟來完成安裝。
- 在大家選定的IDE當中打開Android SDK管理器。
- 展開Extras選項。
- 選擇Google Play Services。請注意,如果大家正在使用的是Android Studio,則還需要安裝Google Repository,我們可以在Extras分類下找到它。
- 在點擊安裝軟件包之后,SDK管理器將逐步完成Google Play Services的安裝工作。
總結
無論大家選擇了Eclipse還是Android Studio作為自己的IDE,在閱讀了本文之后應該都對Android開發領域的工具系統有了更為準確的認識。此外,各位應該也已經了解了哪些工具能夠與自己的IDE匹配在一起并發揮作用。
如果大家按照本文的順序一步步操作,那么現在開發環境應該已經安裝完畢并蓄勢待發了。接下來惟一要做的就是大展拳腳,創建新的Android項目并著手進行開發工作。
核子可樂譯