- Android App開發從入門到精通
- 安輝編著
- 2905字
- 2019-07-30 17:30:32
1.1 探索Android Studio
Android Studio是基于IntelliJ IDEA的官方Android應用集成開發環境(IDE)。除了IntelliJ強大的代碼編輯器和開發者工具,Android Studio提供了更多可提高Android應用構建效率的功能,例如:
? 基于Gradle的靈活構建系統。
? 快速且功能豐富的模擬器。
? 可針對所有Android設備進行開發的統一環境。
? Instant Run,可將變更推送到正在運行的應用,無須構建新的APK。
? 幫助構建應用程序和導入示例代碼以及GitHub集成。
? 豐富的測試工具和框架。
? 可捕捉性能、易用性、版本兼容性以及其他問題的Lint工具。
? C++和NDK支持。
? 內置對Google云端平臺的支持,可輕松集成Google Cloud Messaging和App引擎。
1.1.1 項目結構

圖1-1 Android視圖中的項目文件
Android Studio中的每個項目包含一個或多個含有源代碼文件和資源文件的模塊。模塊類型包括:
? Android應用模塊。
? 庫模塊。
? Google App引擎模塊。
默認情況下,Android Studio會在Android項目視圖中顯示項目文件,如圖1-1所示。該視圖按模塊組織結構,便于快速訪問項目的關鍵源文件。
所有構建文件在項目層次結構頂層Gradle Scripts下顯示,并且每個應用模塊都包含以下文件夾:
? manifests:包含AndroidManifest.xml文件。
? java:包含Java源代碼文件,包括JUnit測試代碼。
? res:包含所有非代碼資源,例如XML布局、UI字符串和位圖圖像。
磁盤上的Android項目結構與此扁平項目結構有所不同。要查看實際的項目文件結構,可以從Project下拉菜單(在圖1-1中顯示為Android)選擇Project。
用戶還可以自定義項目文件的視圖,重點顯示應用開發的特定方面。例如,選擇項目的Problems視圖會顯示指向包含任何已識別編碼和語法錯誤(如布局文件中缺少一個XML元素結束標記)的源文件鏈接,如圖1-2所示。

圖1-2 項目的Problems視圖
1.1.2 Android Studio主窗口
Android Studio主窗口由如圖1-3所示的幾個邏輯區域組成。

圖1-3 Android Studio主窗口
① 工具欄,提供執行各種操作的工具,包括運行應用和啟動Android工具。
② 導航欄,可以幫助在項目中導航,以及打開文件進行編輯。此區域提供Project窗口所示結構的精簡視圖。
③ 編輯器窗口,是創建和修改代碼的區域。編輯器可能因當前文件類型的不同而有所差異。例如,在查看布局文件時,編輯器顯示布局編輯器。
④ 工具窗口欄,在IDE窗口外部運行,并且包含可用于展開或折疊各個工具窗口的按鈕。
⑤ 工具窗口,提供對特定任務的訪問,例如項目管理、搜索和版本控制等??梢哉归_和折疊這些窗口。
⑥ 狀態欄,顯示項目和IDE本身的狀態以及任何警告或消息。
用戶可以通過隱藏或移動工具欄和工具窗口調整主窗口,以便留出更多屏幕空間,還可以使用鍵盤快捷鍵訪問大多數IDE功能。
可以隨時通過按兩下Shift鍵或點擊Android Studio窗口右上角的放大鏡搜索源代碼、數據庫、操作和用戶界面的元素等。此功能非常實用,例如在忘記如何觸發特定IDE操作時,可以利用此功能進行查找。
1.1.3 工具窗口
Android Studio不使用默認窗口,而是根據情境在工作時自動顯示相關工具窗口。默認情況下,最常用的工具窗口固定在應用窗口邊緣的工具窗口欄上。
? 要展開或折疊工具窗口,請在工具窗口欄中點擊該工具的名稱,還可以拖動、固定、取消固定、關聯和分離工具窗口。
? 要返回當前默認工具窗口布局,請點擊Window→Restore Default Layout或點擊Window→Store Current Layout as Default自定義默認布局。
? 要顯示或隱藏整個工具窗口欄,請點擊Android Studio窗口左下角的窗口圖標。
? 要找到特定工具窗口,請將鼠標指針懸停在窗口圖標上方,并從菜單選擇相應的工具窗口。
還可以使用鍵盤快捷鍵打開工具窗口。表1-1列出了最常用的窗口快捷鍵。
表1-1 部分實用工具窗口的鍵盤快捷鍵

如果想要隱藏所有工具欄、工具窗口和編輯器選項卡,請點擊View→Enter Distraction Free Mode。此操作可啟用無干擾模式。要退出“無干擾模式”,請點擊View→Exit Distraction Free Mode。
用戶可以使用快速搜索在Android Studio中的大多數工具窗口中執行搜索和篩選。要使用快速搜索,請選擇工具窗口,然后輸入搜索查詢。
1.1.4 代碼自動完成
Android Studio有三種自動補全代碼快捷鍵,如表1-2所示。
表1-2 代碼自動完成的鍵盤快捷鍵

還可以按Alt+Enter組合鍵執行快速修復并顯示建議的操作。
1.1.5 樣式和格式化
在編輯時,Android Studio將自動應用代碼樣式設置中指定的格式設置和樣式。可以通過編程語言自定義代碼樣式設置,包括指定選項卡和縮進、空格、換行、花括號以及空白行的約定。要自定義代碼樣式設置,請點擊File→Settings→Editor→Code Style(在Mac上,點擊Android Studio→Preferences→Editor→Code Style)。
IDE會在你寫代碼時自動對代碼進行格式化,也可以通過按快捷鍵Ctrl+Alt+L(在Mac上,按Opt+Command+L)格式化代碼、按快捷鍵Ctrl+Alt+I(在Mac上,按Alt+Option+I*)自動縮進所有行。圖1-4(a)是格式化之前的代碼,圖1-4(b)是格式化之后的代碼。

圖1-4-2 格式化前后的代碼
1.1.6 版本控制基礎知識
Android Studio支持多個版本控制系統(VCS),包括Git、GitHub、CVS、Mercurial、Subversion和Google Cloud Source Repositories。
在將應用導入Android Studio后,使用Android Studio VCS菜單選項啟用對所需版本控制系統的VCS支持、創建存儲庫、導入新文件至版本控制以及執行其他版本控制操作:
? 在Android Studio VCS菜單中點擊Enable Version Control Integration。
? 從下拉菜單中選擇要與項目根目錄關聯的版本控制系統,然后點擊OK按鈕。
此時,VCS菜單將根據選擇的系統顯示多個版本控制選項。
提 示
還可以使用 File→Settings→Version Control菜單選項設置和修改版本控制設置。
1.1.7 Gradle構建系統
Android Studio基于Gradle構建系統,并通過適用于Gradle的Android插件提供更多面向Android的功能。該構建系統可以作為集成工具從Android Studio菜單運行,還可以從命令行獨立運行。
可以利用構建系統的功能執行以下操作:
? 自定義、配置和擴展構建流程。
? 使用相同的項目和模塊為用戶的應用創建多個具有不同功能的APK。
? 在不同源代碼集之間重復使用代碼和資源。
利用Gradle的靈活性,可以在不修改應用核心源文件的情況下實現以上所有目的。Android Studio構建文件以build.gradle命名。
這些文件是純文本文件,使用適用于Gradle的Android插件提供的元素以Groovy語法配置構建。
每個項目有一個用于整個項目的頂級構建文件,以及用于各模塊的單獨的模塊層級構建文件。在導入現有項目時,Android Studio會自動生成必要的構建文件。
1.1.8 Debug調試
使用Debug調試功能在調試程序視圖中對引用、表達式和變量值進行內聯驗證,提高代碼檢查效率,如圖1-5所示。Debug調試信息包括:
? 變量值
? 引用某選定對象的引用對象
? 方法返回值
? Lambda和運算符表達式
? 工具提示值

圖1-5 內聯變量值
要啟用Debug調試,請在Debug窗口中點擊Settings,然后選中Show Values Inline復選框。
1.1.9 性能監視器
Android Studio提供性能監視器,讓用戶可以更加輕松地跟蹤應用的內存和CPU使用情況、查找已解除內存分配的對象、查找內存泄漏以及優化圖形性能和分析網絡請求。
在設備或模擬器上運行應用時,打開Android Monitor工具窗口,然后點擊Monitors標簽。
1.1.10 分配跟蹤器
Android Studio允許在監視內存使用情況的同時跟蹤內存分配情況。利用跟蹤內存分配功能,可以在執行某些操作時監視對象被分配到哪些位置。了解這些分配后,就可以相應地調整與這些操作相關的方法調用,從而優化應用的性能和內存使用。
1.1.11 數據文件訪問
Systrace、logcat和Traceview等Android SDK工具可生成性能和調試數據,用于對應用進行詳細分析。
要查看已生成的數據文件,請打開Captures工具窗口。在已生成的文件列表中,雙擊相應的文件即可查看數據。右擊任何.hprof文件,即可將其轉換為標準.hprof文件格式。
1.1.12 代碼檢查
在每次編譯程序時,Android Studio都將自動運行已配置的Lint及其他IDE檢查,幫助輕松識別和糾正代碼結構質量問題。
Lint工具可檢查你的Android項目源文件是否有潛在的錯誤,以及在正確性、安全性、性能、可用性、無障礙性和國際化方面是否需要優化改進,如圖1-6所示。

圖1-6 Android Studio中Lint檢查的結果
除了Lint檢查,Android Studio還可以執行IntelliJ代碼檢查和注解驗證,以簡化編碼工作流程。
1.1.13 日志消息
在使用Android Studio構建和運行應用時,點擊窗口底部的Android Monitor查看adb輸出和設備日志消息(logcat)。