亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

全部開發者教程

Android Studio 如何編譯運行應用?

前面的小節我們介紹了運行配置相關的知識,從本小結我們學習如何構建和運行我們的應用。

1. 構建和運行

我們只需點擊幾下,即可讓 Android Studio 設置好要部署至 Android 模擬器或已連接設備的新項目。

1.1 編譯運行

要編譯和運行我們的應用,請按以下步驟操作:

  1. 在工具欄中,從運行配置下拉菜單中選擇我們的應用。

  2. 從目標設備下拉菜單中,選擇要用來運行應用的設備。


4. 點擊 Run 圖標 。

1.2 更改運行/調試配置

當我們首次運行應用時,Android Studio 使用默認運行配置。該運行配置用于指定要通過 APK 還是 Android App Bundle 部署我們的應用、要運行的模塊、要部署的軟件包、要啟動的 Activity、目標設備、模擬器設置、logcat 選項,等等。

默認運行/調試配置會構建 APK,啟動默認項目 Activity,并使用 Select Deployment Target 對話框選擇目標設備。如果默認設置不適合我們的項目或模塊,我們可以自定義運行/調試配置,也可以在項目、默認和模塊級別創建新配置。要修改運行/調試配置,請依次選擇 Run > Edit Configurations。

Tips:這部分在前一小節已經詳細學習。

1.3 更改編譯變體

默認情況下,在我們點擊 Run 后,Android Studio 會編譯應用的調試版本,不過這僅供在開發期間使用。

要更改 Android Studio 使用的構建變體,請在菜單欄中依次選擇 Build > Select Build Variant

對于不含原生/C++ 代碼的項目

Build Variants 面板有兩列:ModuleActive Build Variant。模塊的 Active Build Variant 值決定了 IDE 部署到連接的設備并顯示在編輯器中的構建變體。

要在變體之間切換,請點擊模塊的 Active Build Variant 單元格,然后從列表字段中選擇所需的變體。

對于含有原生/C++ 代碼的項目

Build Variants 面板有三列:Module、Active Build VariantActive ABI。模塊的 Active Build Variant 值決定了 IDE 部署到設備并顯示在編輯器中的構建變體。對于原生模塊,Active ABI 值決定了編輯器使用的 ABI,但不會影響部署的內容。

要更改構建變體或 ABI,請點擊 Active Build VariantActive ABI 列的單元格,然后從列表中選擇所需的變體或 ABI。在我們更改所選內容后,IDE 會自動同步我們的項目。更改應用或庫模塊的任一列都會將更改應用于所有相關行。

1.4 構建選項

Run 按鈕用于構建應用并將其部署到設備。不過,要構建應用并上傳發布到應用市場,我們需要使用 Build 菜單中的某個選項來編譯項目的部分或全部代碼。

Build 菜單中的各項構建選項功能如下:

Make Module

編譯自上次編譯以來已修改的所選模塊中的所有源文件,以及所選模塊以遞歸方式依賴的所有模塊。編譯包括相關源文件和所有關聯的構建任務。我們可以通過在 Project 窗口中選擇模塊名稱或模塊的某個文件來選擇要構建的模塊。此命令不會生成 APK。

Make Project

生成所有模塊。

Clean Project

刪除所有中間/緩存的構建文件。

Rebuild Project

針對所選編譯變體運行 Clean Project 并生成 APK。

Build Bundle(s)/APK(s) > Build APK(s)

為所選的變體構建當前項目中所有模塊的 APK。構建完成后,系統將顯示確認通知,提供指向 APK 文件的鏈接以及用于在 APK 分析器中對其進行分析的鏈接。

Build Bundle(s)/APK(s) > Build Bundle(s)

為所選的變體構建當前項目中所有模塊的 Android App Bundle。構建完成后,系統將顯示確認通知,提供指向 app bundle 的鏈接以及用于在 APK 分析器中對其進行分析的鏈接。

Generate Signed Bundle/APK

使用向導打開一個對話框以設置新的簽名配置,并構建已簽名的 app bundle 或 APK。我們需要先使用發布密鑰為我們的應用簽名,然后才能將其上傳到 Play 管理中心。

2. 監控構建流程

我們可以通過依次點擊 View > Tool Windows > Build(或點擊工具窗口欄中的 Build 圖標 ),查看有關構建流程的詳細信息。該窗口顯示 Gradle 為構建應用而執行的任務,如下圖:

  1. Build 標簽頁:以樹狀顯示 Gradle 執行的任務,其中每個節點表示一個構建階段或一組任務依賴項。如果您收到構建時錯誤或編譯時錯誤,可以檢查該樹并選擇一個元素來查看錯誤輸出;

  1. Sync 標簽頁:顯示 Gradle 為與項目文件同步而執行的任務。與 Build 標簽頁類似,如果您遇到同步錯誤,可以在樹中選擇元素來查找有關錯誤的更多信息;

  2. Restart:通過為項目中的所有模塊生成中間構建文件,執行與依次選擇 Build > Make Project 相同的操作;

  3. Toggle view:在以圖形樹形式顯示任務執行情況與顯示 Gradle 中更詳細的文本輸出之間切換。

如果在構建流程中出現錯誤,Gradle 可能會向我們推薦一些命令行選項來幫助我們解決問題,如 --stacktrace 或 --debug。要在構建流程中使用命令行選項,請執行以下操作:

  1. 打開 Settings 或 Preferences 對話框:

    • 在 Windows 或 Linux 上,從菜單欄中依次選擇 File > Settings。

    • 在 Mac OSX 上,從菜單欄中依次選擇 Android Studio > Preferences。

  2. 依次轉到 Build, Execution, Deployment > Compiler。

  3. Command-line Options 旁邊的文本字段中,輸入您的命令行選項:

  1. 點擊 OK 保存,然后退出。

3. Apply Changes

在 Android Studio 3.5 及更高版本中,Apply Changes 可讓我們將代碼和資源更改推送到正在運行的應用,而無需重啟應用(在某些情況下,無需重啟當前 Activity)。有了這種靈活性,我們就可以控制在想部署和測試細微增量更改時應用的重啟范圍,同時保持設備的當前狀態。

3.1 使用要求

Apply Changes 操作僅在滿足以下條件時可用:

  • 我們使用調試編譯變體來編譯應用的 APK。

  • 我們將應用部署到搭載 Android 8.0(API 級別 26)或更高版本的目標設備或模擬器上。

3.2 使用 Apply Changes

如果要將更改部署到兼容設備,請使用以下選項:

Apply Changes and Restart Activity 圖標
嘗試通過重啟 Activity 但不重啟應用來應用資源和代碼更改。通常,如果我們修改了方法正文中的代碼或修改了現有資源,則可以使用此選項。

Apply Code Changes 圖標
嘗試僅應用代碼更改而不重啟任何內容。通常,如果我們修改了方法正文中的代碼,但沒有修改任何資源,則可以使用此選項。

Run 圖標
部署所有更改并重啟應用。如果使用任一 Apply Changes 選項都無法應用我們所做的更改,請使用此選項。

3.3 啟用 Run 回退機制

在我們點擊 Apply Changes and Restart ActivityApply Code Changes 后,Android Studio 會構建新 APK 并確定是否可以應用更改。如果無法應用更改并且會導致 Apply Changes 失敗,則 Android Studio 會改為提示我們重新運行您的應用。不過,如果我們不想在每次發生這種情況時都收到提示,則可以將 Android Studio 配置為在無法應用更改時自動重新運行您的應用。

要啟用此行為,請按以下步驟操作:

  1. 打開 SettingsPreferences 對話框:

    • 在 Windows 或 Linux 上,從菜單欄中依次選擇 File > Settings

    • 在 macOS 上,從菜單欄中依次選擇 Android Studio > Preferences

  2. 依次轉到 Build, Execution, Deployment > Deployment。

  3. 選中復選框以針對任一 Apply Changes 操作啟用自動 Run fallback。

  4. 點擊 OK。

4. 小結

本節課程我們主要學習了如何編譯和運行應用。本節課程的重點如下:

  • 掌握構建變體和處理構建錯誤;
  • 掌握Apply Changes方面的知識。