Cómo compilar para Android 11 con Unity

Para admitir Android 11 (nivel de API 30), se agregó el elemento <queries> de visibilidad del paquete a las extensiones de ARCore para RA Foundation (1.19 o posterior). Cuando se usan estas versiones de ARCore, el elemento <queries> requiere Gradle 5.6.4 o una versión posterior.

En la mayoría de los casos, usar la versión 3.6.0 del complemento de Android para Gradle es suficiente. Para confirmar la compatibilidad entre el complemento de Android para Gradle y la versión de Gradle que usas, consulta la tabla de compatibilidad del complemento de Android para Gradle.

Compatibilidad con Gradle en Unity

En las siguientes secciones, encontrarás las instrucciones para las versiones compatibles de Unity.

Para obtener más información, consulta estos artículos:

Unity 2021 y versiones posteriores

Todas las versiones de Unity 2021 admiten Android 11. Consulta la documentación de Gradle para Android de 2021 de Unity para obtener información detallada de la versión. En síntesis:

  • Unity 2021.1 hasta 2021.1.15f1 inclusive, envío con Gradle 5.6.4 o una versión posterior (y el complemento de Gradle 3.6.0 o versiones posteriores). No necesita realizar ninguna acción.

  • Unity 2021.1.16f1 y las versiones posteriores se envían con Gradle 6.1.1 o versiones posteriores (y el complemento de Gradle 4.0.1 o versiones posteriores). No necesita realizar ninguna acción.

Unity 2020

Todas las versiones de Unity 2020 admiten Android 11. Consulta la documentación de Gradle para Android de 2020 de Unity para obtener información detallada de la versión. En síntesis:

  • Unity 2020.1, 2020.2 y 2020.3 hasta 2020.3.14f1 inclusive, se envían con Gradle 5.6.4 o versiones posteriores (y el complemento de Gradle 3.6.0 o versiones posteriores). No necesita realizar ninguna acción.

  • Unity 2020.3.15f1 y las versiones posteriores se envían con Gradle 6.1.1 o versiones posteriores (y el complemento de Gradle 4.0.1 o versiones posteriores). No necesita realizar ninguna acción.

Unity 2019.4

  1. En Unity, abre Unity Preferences > External Tools y configura el Gradle personalizado como Gradle 5.6.4 o una versión posterior. Consulta la herramienta de compilación de Gradle para descargar.

    Captura de pantalla del panel External Tools, Android que muestra una ruta de Gradle especificada manualmente.

  2. Ve a Project Settings > Player > Android > Publishing Settings > Build y selecciona ambas opciones:

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

    Captura de pantalla que muestra el panel Publishing Settings, Build con ambas opciones de plantilla de Gradle seleccionadas

  3. Aplica los siguientes cambios a los dos archivos generados:

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

    Si aparece, quita el siguiente comentario de la parte superior del archivo:

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

    Inserta las siguientes líneas en la parte superior del archivo:

    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'
          }
       }
    }