Android Studio 如何編譯運行應(yīng)用?
前面的小節(jié)我們介紹了運行配置相關(guān)的知識,從本小結(jié)我們學(xué)習(xí)如何構(gòu)建和運行我們的應(yīng)用。
1. 構(gòu)建和運行
我們只需點擊幾下,即可讓 Android Studio 設(shè)置好要部署至 Android 模擬器或已連接設(shè)備的新項目。
1.1 編譯運行
要編譯和運行我們的應(yīng)用,請按以下步驟操作:
-
在工具欄中,從運行配置下拉菜單中選擇我們的應(yīng)用。
-
從目標(biāo)設(shè)備下拉菜單中,選擇要用來運行應(yīng)用的設(shè)備。

4. 點擊 Run 圖標(biāo) 。
1.2 更改運行/調(diào)試配置
當(dāng)我們首次運行應(yīng)用時,Android Studio 使用默認(rèn)運行配置。該運行配置用于指定要通過 APK 還是 Android App Bundle 部署我們的應(yīng)用、要運行的模塊、要部署的軟件包、要啟動的 Activity、目標(biāo)設(shè)備、模擬器設(shè)置、logcat 選項,等等。
默認(rèn)運行/調(diào)試配置會構(gòu)建 APK,啟動默認(rèn)項目 Activity,并使用 Select Deployment Target 對話框選擇目標(biāo)設(shè)備。如果默認(rèn)設(shè)置不適合我們的項目或模塊,我們可以自定義運行/調(diào)試配置,也可以在項目、默認(rèn)和模塊級別創(chuàng)建新配置。要修改運行/調(diào)試配置,請依次選擇 Run > Edit Configurations。
Tips:這部分在前一小節(jié)已經(jīng)詳細(xì)學(xué)習(xí)。
1.3 更改編譯變體
默認(rèn)情況下,在我們點擊 Run 后,Android Studio 會編譯應(yīng)用的調(diào)試版本,不過這僅供在開發(fā)期間使用。
要更改 Android Studio 使用的構(gòu)建變體,請在菜單欄中依次選擇 Build > Select Build Variant。
對于不含原生/C++ 代碼的項目
Build Variants 面板有兩列:Module 和 Active Build Variant。模塊的 Active Build Variant 值決定了 IDE 部署到連接的設(shè)備并顯示在編輯器中的構(gòu)建變體。

要在變體之間切換,請點擊模塊的 Active Build Variant 單元格,然后從列表字段中選擇所需的變體。
對于含有原生/C++ 代碼的項目
Build Variants 面板有三列:Module、Active Build Variant 和 Active ABI。模塊的 Active Build Variant 值決定了 IDE 部署到設(shè)備并顯示在編輯器中的構(gòu)建變體。對于原生模塊,Active ABI 值決定了編輯器使用的 ABI,但不會影響部署的內(nèi)容。

要更改構(gòu)建變體或 ABI,請點擊 Active Build Variant 或 Active ABI 列的單元格,然后從列表中選擇所需的變體或 ABI。在我們更改所選內(nèi)容后,IDE 會自動同步我們的項目。更改應(yīng)用或庫模塊的任一列都會將更改應(yīng)用于所有相關(guān)行。
1.4 構(gòu)建選項
Run 按鈕用于構(gòu)建應(yīng)用并將其部署到設(shè)備。不過,要構(gòu)建應(yīng)用并上傳發(fā)布到應(yīng)用市場,我們需要使用 Build 菜單中的某個選項來編譯項目的部分或全部代碼。
Build 菜單中的各項構(gòu)建選項功能如下:
Make Module
編譯自上次編譯以來已修改的所選模塊中的所有源文件,以及所選模塊以遞歸方式依賴的所有模塊。編譯包括相關(guān)源文件和所有關(guān)聯(lián)的構(gòu)建任務(wù)。我們可以通過在 Project 窗口中選擇模塊名稱或模塊的某個文件來選擇要構(gòu)建的模塊。此命令不會生成 APK。
Make Project
生成所有模塊。
Clean Project
刪除所有中間/緩存的構(gòu)建文件。
Rebuild Project
針對所選編譯變體運行 Clean Project 并生成 APK。
Build Bundle(s)/APK(s) > Build APK(s)
為所選的變體構(gòu)建當(dāng)前項目中所有模塊的 APK。構(gòu)建完成后,系統(tǒng)將顯示確認(rèn)通知,提供指向 APK 文件的鏈接以及用于在 APK 分析器中對其進(jìn)行分析的鏈接。
Build Bundle(s)/APK(s) > Build Bundle(s)
為所選的變體構(gòu)建當(dāng)前項目中所有模塊的 Android App Bundle。構(gòu)建完成后,系統(tǒng)將顯示確認(rèn)通知,提供指向 app bundle 的鏈接以及用于在 APK 分析器中對其進(jìn)行分析的鏈接。
Generate Signed Bundle/APK
使用向?qū)Т蜷_一個對話框以設(shè)置新的簽名配置,并構(gòu)建已簽名的 app bundle 或 APK。我們需要先使用發(fā)布密鑰為我們的應(yīng)用簽名,然后才能將其上傳到 Play 管理中心。
2. 監(jiān)控構(gòu)建流程
我們可以通過依次點擊 View > Tool Windows > Build(或點擊工具窗口欄中的 Build 圖標(biāo) ),查看有關(guān)構(gòu)建流程的詳細(xì)信息。該窗口顯示 Gradle 為構(gòu)建應(yīng)用而執(zhí)行的任務(wù),如下圖:

- Build 標(biāo)簽頁:以樹狀顯示 Gradle 執(zhí)行的任務(wù),其中每個節(jié)點表示一個構(gòu)建階段或一組任務(wù)依賴項。如果您收到構(gòu)建時錯誤或編譯時錯誤,可以檢查該樹并選擇一個元素來查看錯誤輸出;

-
Sync 標(biāo)簽頁:顯示 Gradle 為與項目文件同步而執(zhí)行的任務(wù)。與 Build 標(biāo)簽頁類似,如果您遇到同步錯誤,可以在樹中選擇元素來查找有關(guān)錯誤的更多信息;
-
Restart:通過為項目中的所有模塊生成中間構(gòu)建文件,執(zhí)行與依次選擇 Build > Make Project 相同的操作;
-
Toggle view:在以圖形樹形式顯示任務(wù)執(zhí)行情況與顯示 Gradle 中更詳細(xì)的文本輸出之間切換。
如果在構(gòu)建流程中出現(xiàn)錯誤,Gradle 可能會向我們推薦一些命令行選項來幫助我們解決問題,如 --stacktrace 或 --debug。要在構(gòu)建流程中使用命令行選項,請執(zhí)行以下操作:
-
打開 Settings 或 Preferences 對話框:
-
在 Windows 或 Linux 上,從菜單欄中依次選擇 File > Settings。
-
在 Mac OSX 上,從菜單欄中依次選擇 Android Studio > Preferences。
-
-
依次轉(zhuǎn)到 Build, Execution, Deployment > Compiler。
-
在 Command-line Options 旁邊的文本字段中,輸入您的命令行選項:

- 點擊 OK 保存,然后退出。
3. Apply Changes
在 Android Studio 3.5 及更高版本中,Apply Changes 可讓我們將代碼和資源更改推送到正在運行的應(yīng)用,而無需重啟應(yīng)用(在某些情況下,無需重啟當(dāng)前 Activity)。有了這種靈活性,我們就可以控制在想部署和測試細(xì)微增量更改時應(yīng)用的重啟范圍,同時保持設(shè)備的當(dāng)前狀態(tài)。
3.1 使用要求
Apply Changes 操作僅在滿足以下條件時可用:
-
我們使用調(diào)試編譯變體來編譯應(yīng)用的 APK。
-
我們將應(yīng)用部署到搭載 Android 8.0(API 級別 26)或更高版本的目標(biāo)設(shè)備或模擬器上。
3.2 使用 Apply Changes
如果要將更改部署到兼容設(shè)備,請使用以下選項:

Apply Changes and Restart Activity 圖標(biāo)
嘗試通過重啟 Activity 但不重啟應(yīng)用來應(yīng)用資源和代碼更改。通常,如果我們修改了方法正文中的代碼或修改了現(xiàn)有資源,則可以使用此選項。
Apply Code Changes 圖標(biāo)
嘗試僅應(yīng)用代碼更改而不重啟任何內(nèi)容。通常,如果我們修改了方法正文中的代碼,但沒有修改任何資源,則可以使用此選項。
Run 圖標(biāo)
部署所有更改并重啟應(yīng)用。如果使用任一 Apply Changes 選項都無法應(yīng)用我們所做的更改,請使用此選項。
3.3 啟用 Run 回退機(jī)制
在我們點擊 Apply Changes and Restart Activity 或 Apply Code Changes 后,Android Studio 會構(gòu)建新 APK 并確定是否可以應(yīng)用更改。如果無法應(yīng)用更改并且會導(dǎo)致 Apply Changes 失敗,則 Android Studio 會改為提示我們重新運行您的應(yīng)用。不過,如果我們不想在每次發(fā)生這種情況時都收到提示,則可以將 Android Studio 配置為在無法應(yīng)用更改時自動重新運行您的應(yīng)用。
要啟用此行為,請按以下步驟操作:
-
打開 Settings 或 Preferences 對話框:
-
在 Windows 或 Linux 上,從菜單欄中依次選擇 File > Settings。
-
在 macOS 上,從菜單欄中依次選擇 Android Studio > Preferences。
-
-
依次轉(zhuǎn)到 Build, Execution, Deployment > Deployment。
-
選中復(fù)選框以針對任一 Apply Changes 操作啟用自動 Run fallback。

-
點擊 OK。
4. 小結(jié)
本節(jié)課程我們主要學(xué)習(xí)了如何編譯和運行應(yīng)用。本節(jié)課程的重點如下:
- 掌握構(gòu)建變體和處理構(gòu)建錯誤;
- 掌握Apply Changes方面的知識。
PT950 ·
2025 imooc.com All Rights Reserved |