使用 Unity 建構適用於 Android 11 的應用程式

為了支援 Android 11 (API 級別 30),套件瀏覽權限 <queries> 元素已新增至 AR Foundation for AR Foundation (1.19 以上版本) 的 ARCore Extensions 中。使用這些版本的 ARCore 時,<queries> 元素需要 Gradle 5.6.4 以上版本。

在大多數情況下,只要使用 Android Gradle 外掛程式 3.6.0 版即可。如要確認 Android Gradle 外掛程式和您使用的 Gradle 版本之間是否相容,請參閱 Android Gradle 外掛程式相容性表

Unity Gradle 支援

以下各節列出支援 Unity 版本的操作說明。

詳情請參閱以下文章:

Unity 2021 以上版本

所有版本的 Unity 2021 都支援指定 Android 11。如需詳細的版本資訊,請參閱 Unity 的 2021 年 Gradle for Android 說明文件。摘要:

  • Unity 2021.1 以上版本與 Gradle 5.6.4 以上版本 (以及 Gradle 外掛程式 3.6.0 以上版本) 會連帶納入 2021.1.15f1 版。您無須採取任何行動。

  • Unity 2021.1.16f1 以上版本會隨附 Gradle 6.1.1 以上版本 (以及 Gradle 外掛程式 4.0.1 以上版本)。您無須採取任何行動。

Unity 2020

所有版本的 Unity 2020 都支援指定 Android 11。如需詳細的版本資訊,請參閱 Unity 的 2020 年 Gradle for Android 說明文件。摘要:

  • Unity 2020.1、2020.2 和 2020.3 至於 2020.3.14f1 以上,也隨附於 Gradle 5.6.4 以上版本 (以及 Gradle 外掛程式 3.6.0 以上版本)。您無須採取任何行動。

  • Unity 2020.3.15f1 以上版本會隨附 Gradle 6.1.1 以上版本 (以及 Gradle 外掛程式 4.0.1 以上版本)。您無須採取任何行動。

Unity 2019.4

  1. 在 Unity 中開啟 Unity Preferences > External Tools,並將自訂 Gradle 設為 Gradle 5.6.4 以上版本。如需下載相關資訊,請參閱 Gradle 建構工具

    「External Tools」Android 窗格的螢幕截圖,顯示手動指定的 Gradle 路徑。

  2. 前往 Project Settings > Player > Android > Publishing Settings > Build,然後選取以下兩個項目:

    1. Custom Main Gradle Template
    2. Custom Launcher Gradle Template.

    顯示「Publishing Settings」(發布設定) 和「Build」(建構) 窗格,同時已選取兩個 Gradle 範本選項的螢幕截圖

  3. 將下列變更套用至兩個產生的檔案:

    • Assets/Plugins/Android/mainTemplate.gradle
    • Assets/Plugins/Android/launcherTemplate.gradle

    如果檔案頂端有以下註解,請移除檔案頂端的以下註解:

    // GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
    

    在檔案頂端插入下列幾行內容:

    buildscript {
        repositories {
            google()
            mavenCentral()
        }
        dependencies {
            // Must be Android Gradle Plugin 3.6.0 or later. For a list of
            // compatible Gradle versions refer to:
            // https://developer.android.com/studio/releases/gradle-plugin
            classpath 'com.android.tools.build:gradle:3.6.0'
        }
    }
    
    allprojects {
       repositories {
          google()
          mavenCentral()
          flatDir {
            dirs 'libs'
          }
       }
    }