Android官方用戶指南翻譯學(xué)習(xí)

Android Studio 是基于 IntelliJ IDEA 的官方 Android 應(yīng)用開發(fā)集成開發(fā)環(huán)境 (IDE)。除了 IntelliJ 強(qiáng)大的代碼編輯器和開發(fā)者工具,Android Studio 提供了更多可提高 Android 應(yīng)用構(gòu)建效率的功能,例如:
基于 Gradle 的靈活構(gòu)建系統(tǒng)
快速且功能豐富的模擬器
可針對(duì)所有 Android 設(shè)備進(jìn)行開發(fā)的統(tǒng)一的環(huán)境
Instant Run,可將變更推送到運(yùn)行中的應(yīng)用,無需構(gòu)建新的 APK
可幫助您構(gòu)建常用應(yīng)用功能和導(dǎo)入示例代碼的代碼模板和 GitHub 集成
豐富的測(cè)試工具和框架
可捕捉性能、可用性、版本兼容性以及其他問題的 Lint 工具
C++ 和 NDK 支持
內(nèi)置對(duì) Google 云端平臺(tái)的支持,可輕松集成 Google Cloud Messaging 和 App 引擎

項(xiàng)目結(jié)構(gòu)

[圖片上傳中...(image-2110f7-1561897031695-0)]

圖 1. Android 視圖中的項(xiàng)目文件。

Android Studio 中的每個(gè)項(xiàng)目包含一個(gè)或多個(gè)含有源代碼文件和資源文件的模塊。 模塊類型包括:
Android 應(yīng)用模塊
庫模塊
Google App 引擎模塊

默認(rèn)情況下,Android Studio 會(huì)在 Android 項(xiàng)目視圖中顯示您的項(xiàng)目文件,如圖 1 所示。 該視圖按模塊組織結(jié)構(gòu),方便您快速訪問項(xiàng)目的關(guān)鍵源文件。
所有構(gòu)建文件在項(xiàng)目層次結(jié)構(gòu)頂層 Gradle Scripts 下顯示,且每個(gè)應(yīng)用模塊都包含以下文件夾:
manifests:包含 AndroidManifest.xml
文件。
java:包含 Java 源代碼文件,包括 JUnit 測(cè)試代碼。
res:包含所有非代碼資源,例如 XML 布局、UI 字符串和位圖圖像。

磁盤上的 Android 項(xiàng)目結(jié)構(gòu)與此扁平項(xiàng)目結(jié)構(gòu)有所不同。 要查看實(shí)際的項(xiàng)目文件結(jié)構(gòu),可從 Project下拉菜單(在圖 1 中顯示為 Android)選擇 Project
您也可以自定義項(xiàng)目文件的視圖,重點(diǎn)顯示應(yīng)用開發(fā)的特定方面: 例如,選擇項(xiàng)目的 Problems 視圖會(huì)顯示指向包含任何已識(shí)別編碼和語法錯(cuò)誤(例如布局文件中缺失一個(gè) XML 元素結(jié)束標(biāo)記)的源文件的鏈接。
[圖片上傳中...(image-3dbd24-1561897081741-1)]

圖 2. Problems 視圖中的項(xiàng)目文件,顯示存在問題的布局文件。

用戶界面
Android Studio 主窗口由圖 3 標(biāo)注的幾個(gè)邏輯區(qū)域組成。

[圖片上傳中...(image-cf6675-1561897081741-0)]
圖 3. Android Studio 主窗口。
工具欄提供執(zhí)行各種操作的工具,包括運(yùn)行應(yīng)用和啟動(dòng) Android 工具。
導(dǎo)航欄可幫助您在項(xiàng)目中導(dǎo)航,以及打開文件進(jìn)行編輯。 此區(qū)域提供 Project 窗口所示結(jié)構(gòu)的精簡視圖。
編輯器窗口是創(chuàng)建和修改代碼的區(qū)域。 編輯器可能因當(dāng)前文件類型的不同而有所差異。 例如,在查看布局文件時(shí),編輯器顯示布局編輯器。
工具窗口提供對(duì)特定任務(wù)的訪問,例如項(xiàng)目管理、搜索和版本控制等。 您可以展開和折疊這些窗口。
狀態(tài)欄顯示項(xiàng)目和 IDE 本身的狀態(tài)以及任何警告或消息。

您可以通過隱藏或移動(dòng)工具欄和工具窗口調(diào)整主窗口,以便留出更多屏幕空間。 您還可以使用鍵盤快捷鍵訪問大多數(shù) IDE 功能。
您可以隨時(shí)通過按兩下 Shift 鍵或點(diǎn)擊 Android Studio 窗口右上角的放大鏡搜索源代碼、數(shù)據(jù)庫、操作和用戶界面的元素等。此功能非常實(shí)用,例如在您忘記如何觸發(fā)特定 IDE 操作時(shí),可以利用此功能進(jìn)行查找。

工具窗口
Android Studio 不使用預(yù)設(shè)窗口,而是根據(jù)情境在您工作時(shí)自動(dòng)顯示相關(guān)工具窗口。 默認(rèn)情況下,最常用的工具窗口固定在應(yīng)用窗口邊緣的工具窗口欄上。
要展開或折疊工具窗口,請(qǐng)?jiān)诠ぞ叽翱跈谥悬c(diǎn)擊該工具的名稱。 您還可以拖動(dòng)、固定、取消固定、關(guān)聯(lián)和分離工具窗口。
要返回到當(dāng)前默認(rèn)工具窗口布局,請(qǐng)點(diǎn)擊 Window > Restore Default Layout 或點(diǎn)擊 Window > Store Current Layout as Default 自定義默認(rèn)布局。
要顯示或隱藏整個(gè)工具窗口欄,請(qǐng)點(diǎn)擊 Android Studio 窗口左下角的窗口圖標(biāo)

[圖片上傳中...(image-acabb5-1561897096243-5)]

。
要找到特定工具窗口,請(qǐng)將鼠標(biāo)指針懸停在窗口圖標(biāo)上方,并從菜單選擇相應(yīng)的工具窗口。

您也可以使用鍵盤快捷鍵打開工具窗口。 表 1 列出了最常用的窗口的快捷鍵。
表 1. 部分實(shí)用工具窗口的鍵盤快捷鍵。
工具窗口
Windows 和 Linux
Mac

項(xiàng)目
Alt+1
**Command+1******

版本控制
Alt+9
Command+9

運(yùn)行
Shift+F10
Control+R

調(diào)試
Shift+F9
Control+D

Android Monitor
Alt+6
Command+6

返回至編輯器
Esc
Esc

隱藏所有工具窗口
Control+Shift+F12
Command+Shift+F12

如果您想要隱藏所有工具欄、工具窗口和編輯器選項(xiàng)卡,請(qǐng)點(diǎn)擊 View > Enter Distraction Free Mode。 此操作可啟用無干擾模式。 要退出“無干擾模式”,請(qǐng)點(diǎn)擊 View > Exit Distraction Free Mode。
您可以使用快速搜索在 Android Studio 中的大多數(shù)工具窗口中執(zhí)行搜索和篩選。 要使用快速搜索,請(qǐng)選擇工具窗口,然后鍵入搜索查詢。
如需了解更多技巧,請(qǐng)參閱鍵盤快捷鍵。

代碼自動(dòng)完成
Android Studio 有三種代碼自動(dòng)完成類型,您可以使用鍵盤快捷鍵訪問它們。
表 2. 代碼自動(dòng)完成的鍵盤快捷鍵
類型
說明
Windows 和 Linux
Mac

基本自動(dòng)完成
顯示對(duì)變量、類型、方法和表達(dá)式等的基本建議。 如果連續(xù)兩次調(diào)用基本自動(dòng)完成,將顯示更多結(jié)果,包括私有成員和非導(dǎo)入靜態(tài)成員。
Control+空格
Control+空格

智能自動(dòng)完成
根據(jù)上下文顯示相關(guān)選項(xiàng)。 智能自動(dòng)完成可識(shí)別預(yù)期類型和數(shù)據(jù)流。 如果連續(xù)兩次調(diào)用智能自動(dòng)完成,將顯示更多結(jié)果,包括鏈。
Control+Shift+空格
Control+Shift+空格

語句自動(dòng)完成
自動(dòng)完成當(dāng)前語句,添加缺失的圓括號(hào)、大括號(hào)、花括號(hào)和格式化等。
Control+Shift+Enter
Shift+Command+Enter

您還可以按 Alt+Enter 執(zhí)行快速修復(fù)并顯示建議的操作。
如需了解有關(guān)代碼自動(dòng)完成的詳細(xì)信息,請(qǐng)參閱代碼自動(dòng)完成

導(dǎo)航
以下是一些操作 Android Studio 的技巧。
使用最近文件操作在最近訪問的文件之間切換。 按 Control+E(在 Mac 上,按 Command+E)調(diào)出“最近文件”操作。 默認(rèn)情況下將選擇最后一次訪問的文件。 在此操作中您還可以通過左側(cè)列訪問任何工具窗口。
使用文件結(jié)構(gòu)操作查看當(dāng)前文件的結(jié)構(gòu)。 按 Control+F12(在 Mac 上,按 Command+F12)調(diào)出“文件結(jié)構(gòu)”操作。您可以使用此操作快速導(dǎo)航至當(dāng)前文件的任何部分。
使用導(dǎo)航至類操作搜索并導(dǎo)航至項(xiàng)目中的特定類。 按 Control+N(在 Mac 上,按 Command+O)調(diào)出此操作。 “導(dǎo)航至類”支持復(fù)雜的表達(dá)式,包括駝峰、路徑、直線導(dǎo)航和中間名匹配等。 如果連續(xù)兩次調(diào)用此操作,將顯示項(xiàng)目類以外的結(jié)果。
使用導(dǎo)航至文件操作導(dǎo)航至文件或文件夾。 按 Control+Shift+N(在 Mac 上,按 Command+Shift+O)調(diào)出“導(dǎo)航至文件”操作。要搜索文件夾,但不搜索文件,請(qǐng)?jiān)诒磉_(dá)式末尾添加“/”。
使用導(dǎo)航至符號(hào)操作按名稱導(dǎo)航至方法或字段。按 Control+Shift+Alt+N(在 Mac 上,按 Command+Shift+Alt+O)調(diào)出“導(dǎo)航至符號(hào)”操作。
Alt+F7 查找引用當(dāng)前光標(biāo)位置處的類、方法、字段、參數(shù)或語句的所有代碼片段。

樣式和格式化
在您編輯時(shí),Android Studio 將自動(dòng)應(yīng)用代碼樣式設(shè)置中指定的格式設(shè)置和樣式。您可以通過編程語言自定義代碼樣式設(shè)置,包括指定選項(xiàng)卡和縮進(jìn)、空格、換行、花括號(hào)以及空白行的約定。要自定義代碼樣式設(shè)置,請(qǐng)點(diǎn)擊 File > Settings > Editor > Code Style(在 Mac 上,點(diǎn)擊 Android Studio > Preferences > Editor > Code Style)。
雖然 IDE 會(huì)在您工作時(shí)自動(dòng)應(yīng)用格式化,但您也可以通過按 Control+Alt+L(在 Mac 上,按 Opt+Command+L)顯式調(diào)用重新格式化代碼操作,或按Control+Alt+I*(在 Mac 上,按 Alt+Option+I)自動(dòng)縮進(jìn)所有行。

[圖片上傳中...(image-8ab0c1-1561897096242-4)]

圖 4. 格式化前的代碼。

[圖片上傳中...(image-e7f4c8-1561897096242-3)]

圖 5. 格式化后的代碼。

版本控制基礎(chǔ)知識(shí)
Android Studio 支持多個(gè)版本控制系統(tǒng) (VCS),包括 Git、GitHub、CVS、Mercurial、Subversion 和 Google Cloud Source Repositories。
在將您的應(yīng)用導(dǎo)入 Android Studio 后,使用 Android Studio VCS 菜單選項(xiàng)啟用對(duì)所需版本控制系統(tǒng)的 VCS 支持、創(chuàng)建存儲(chǔ)庫、導(dǎo)入新文件至版本控制以及執(zhí)行其他版本控制操作:
在 Android Studio VCS 菜單中點(diǎn)擊 Enable Version Control Integration。
從下拉菜單中選擇要與項(xiàng)目根目錄關(guān)聯(lián)的版本控制系統(tǒng),然后點(diǎn)擊 OK。

此時(shí),VCS 菜單將根據(jù)您選擇的系統(tǒng)顯示多個(gè)版本控制選項(xiàng)。
注: 您還可以使用 File > Settings > Version Control 菜單選項(xiàng)設(shè)置和修改版本控制設(shè)置。

Gradle 構(gòu)建系統(tǒng)
Android Studio 基于 Gradle 構(gòu)建系統(tǒng),并通過 Android Gradle 插件提供更多面向 Android 的功能。該構(gòu)建系統(tǒng)可以作為集成工具從 Android Studio 菜單運(yùn)行,也可從命令行獨(dú)立運(yùn)行。您可以利用構(gòu)建系統(tǒng)的功能執(zhí)行以下操作:
自定義、配置和擴(kuò)展構(gòu)建流程。
使用相同的項(xiàng)目和模塊為您的應(yīng)用創(chuàng)建多個(gè)具有不同功能的 APK。
在不同源代碼集中重復(fù)使用代碼和資源。

利用 Gradle 的靈活性,您可以在不修改應(yīng)用核心源文件的情況下實(shí)現(xiàn)以上所有目的。 Android Studio 構(gòu)建文件以 build.gradle
命名。 這些文件是純文本文件,使用 Android Gradle 插件提供的元素以 Groovy 語法配置構(gòu)建。每個(gè)項(xiàng)目有一個(gè)用于整個(gè)項(xiàng)目的頂級(jí)構(gòu)建文件,以及用于各模塊的單獨(dú)的模塊層級(jí)構(gòu)建文件。在導(dǎo)入現(xiàn)有項(xiàng)目時(shí),Android Studio 會(huì)自動(dòng)生成必要的構(gòu)建文件。
如需了解有關(guān)構(gòu)建系統(tǒng)和如何配置的更多信息,請(qǐng)參閱配置構(gòu)建。

構(gòu)建變體
構(gòu)建系統(tǒng)可幫助您從一個(gè)項(xiàng)目創(chuàng)建同一應(yīng)用的不同版本。 如果您同時(shí)擁有免費(fèi)版本和付費(fèi)版本的應(yīng)用,或想要在 Google Play 上為不同設(shè)備配置分發(fā)多個(gè) APK,則可以使用此功能。
如需了解有關(guān)配置構(gòu)建變體的詳細(xì)信息,請(qǐng)參閱配置 Gradle 構(gòu)建

APK 拆分
通過 APK 拆分,您可以高效地基于屏幕密度或 ABI 創(chuàng)建多個(gè) APK。 例如,您可以利用 APK 拆分創(chuàng)建單獨(dú)的 hdpi 和 mdpi 版本應(yīng)用,同時(shí)仍將它們視為一個(gè)變體,并允許其共享測(cè)試應(yīng)用、javac、dx 和 ProGuard 設(shè)置。
如需了解有關(guān)使用 APK 拆分的詳細(xì)信息,請(qǐng)參閱 APK 拆分

資源壓縮
Android Studio 中的資源壓縮功能可自動(dòng)從您打包的應(yīng)用和庫依賴關(guān)系中刪除不使用的資源。 例如,如果您的應(yīng)用正在使用 Google Play 服務(wù),以訪問 Google 云端硬盤功能,且您當(dāng)前未使用 Google Sign-In,則資源壓縮功能可刪除 SignInButton
按鈕的各種可繪制資產(chǎn)。
注: 資源壓縮與代碼壓縮工具(例如 ProGuard)協(xié)同工作。
如需了解有關(guān)壓縮代碼和資源的詳細(xì)信息,請(qǐng)參閱壓縮代碼和資源。

管理依賴關(guān)系
項(xiàng)目的依賴關(guān)系在 build.gradle
文件中按名稱指定。 Gradle 可自動(dòng)查找您的依賴關(guān)系,并在構(gòu)建中提供。 您可以在 build.gradle
文件中聲明模塊依賴關(guān)系、遠(yuǎn)程二進(jìn)制依賴關(guān)系以及本地二進(jìn)制依賴關(guān)系。 Android Studio 配置項(xiàng)目時(shí)默認(rèn)使用 Maven 中央存儲(chǔ)庫。 (該配置包含在項(xiàng)目的頂級(jí)構(gòu)建文件中。) 如需了解有關(guān)配置依賴關(guān)系的詳細(xì)信息,請(qǐng)參閱配置構(gòu)建變體。

調(diào)試和配置文件工具
Android Studio 可幫助您調(diào)試和改進(jìn)代碼的性能,包括內(nèi)聯(lián)調(diào)試和性能分析工具。

內(nèi)聯(lián)調(diào)試
使用內(nèi)聯(lián)調(diào)試功能在調(diào)試程序視圖中對(duì)引用、表達(dá)式和變量值進(jìn)行內(nèi)聯(lián)驗(yàn)證,提高代碼走查效率。內(nèi)聯(lián)調(diào)試信息包括:
內(nèi)聯(lián)變量值
引用某選定對(duì)象的引用對(duì)象
方法返回值
Lambda 和運(yùn)算符表達(dá)式
工具提示值

[圖片上傳中...(image-6e3fa3-1561897096242-2)]

圖 6. 內(nèi)聯(lián)變量值。
要啟用內(nèi)聯(lián)調(diào)試,請(qǐng)?jiān)?Debug 窗口中點(diǎn)擊 Settings

[圖片上傳中...(image-387a61-1561897096242-1)]

并選中 Show Values Inline 復(fù)選框。

性能監(jiān)視器
Android Studio 提供性能監(jiān)視器,讓您可以更加輕松地跟蹤應(yīng)用的內(nèi)存和 CPU 使用情況、查找已解除內(nèi)存分配的對(duì)象、查找內(nèi)存泄漏以及優(yōu)化圖形性能和分析網(wǎng)絡(luò)請(qǐng)求。在設(shè)備或模擬器上運(yùn)行您的應(yīng)用時(shí),打開 Android Monitor 工具窗口,然后點(diǎn)擊 Monitors 選項(xiàng)卡。
如需了解有關(guān)性能監(jiān)視器的詳細(xì)信息,請(qǐng)參閱 Android Monitor。

堆轉(zhuǎn)儲(chǔ)
在 Android Studio 中監(jiān)控內(nèi)存使用情況時(shí),您可以同時(shí)啟動(dòng)垃圾回收并將 Java 堆轉(zhuǎn)儲(chǔ)為 Android 專有 HPROF 二進(jìn)制格式的堆快照文件。HPROF 查看器顯示類、每個(gè)類的實(shí)例以及引用樹,可以幫助您跟蹤內(nèi)存使用情況,查找內(nèi)存泄漏。
如需了解有關(guān)使用堆轉(zhuǎn)儲(chǔ)功能的詳細(xì)信息,請(qǐng)參閱轉(zhuǎn)儲(chǔ)和分析 Java 堆。

分配跟蹤器
Android Studio 允許在監(jiān)視內(nèi)存使用情況的同時(shí)跟蹤內(nèi)存分配情況。 利用跟蹤內(nèi)存分配功能,您可以在執(zhí)行某些操作時(shí)監(jiān)視對(duì)象被分配到哪些位置。 了解這些分配后,您就可以相應(yīng)地調(diào)整與這些操作相關(guān)的方法調(diào)用,從而優(yōu)化應(yīng)用的性能和內(nèi)存使用。
如需了解有關(guān)跟蹤和分析分配的詳細(xì)信息,請(qǐng)參閱分配跟蹤器。

數(shù)據(jù)文件訪問
Systrace、logcatTraceview 等 Android SDK 工具可生成性能和調(diào)試數(shù)據(jù),用于對(duì)應(yīng)用進(jìn)行詳細(xì)分析。
要查看已生成的數(shù)據(jù)文件,請(qǐng)打開“Captures”工具窗口。 在已生成的文件列表中,雙擊相應(yīng)的文件即可查看數(shù)據(jù)。右鍵點(diǎn)擊任何 .hprof
文件即可將其轉(zhuǎn)換為標(biāo)準(zhǔn) .hprof 文件格式。

代碼檢查
在您每次編譯程序時(shí),Android Studio 都將自動(dòng)運(yùn)行已配置的 Lint 及其他 IDE 檢查,以幫助您輕松識(shí)別和糾正代碼結(jié)構(gòu)質(zhì)量問題。
Lint 工具可檢查您的 Android 項(xiàng)目源文件是否有潛在的錯(cuò)誤,以及在正確性、安全性、性能、可用性、無障礙性和國際化方面是否需要優(yōu)化改進(jìn)。

[圖片上傳中...(image-86e783-1561897096241-0)]

圖 7. Android Studio 中 Lint 檢查的結(jié)果。
除了 Lint 檢查,Android Studio 還可以執(zhí)行 IntelliJ 代碼檢查和注解驗(yàn)證,以簡化您的編碼工作流程。
如需了解詳細(xì)信息,請(qǐng)參閱使用 Lint 改進(jìn)代碼lint 工具。

Android Studio 中的注解
Android Studio 支持為變量、參數(shù)和返回值添加注解,以幫助您捕捉錯(cuò)誤,例如 null 指針異常和資源類型沖突。 Android SDK 管理器將支持注解庫納入 Android 支持存儲(chǔ)庫中,供與 Android Studio 結(jié)合使用。 Android Studio 在代碼檢查期間驗(yàn)證已配置的注解。
有關(guān) Android 注解的更多詳細(xì)信息,請(qǐng)參閱使用注解改進(jìn)代碼檢查

日志消息
在使用 Android Studio 構(gòu)建和運(yùn)行應(yīng)用時(shí),您可以點(diǎn)擊窗口底部的 Android Monitor 查看 adb 輸出和設(shè)備日志消息 (logcat)。
如果您想使用 Android 設(shè)備監(jiān)視器調(diào)試您的應(yīng)用,您可以點(diǎn)擊 Tools > Android > Android Device Monitor 啟動(dòng)設(shè)備監(jiān)視器。設(shè)備監(jiān)視器中提供全套的 DDMS 工具,您可以使用這些工具進(jìn)行應(yīng)用分析和設(shè)備行為控制等操作。此外,該監(jiān)視器還包括層次結(jié)構(gòu)查看器工具,可幫助您優(yōu)化布局。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容