El Editor de Unity tiene una versión bloqueada a una versión específica de Gradle. Las versiones anteriores de Unity Editor usan versiones anteriores de Gradle que no son compatibles con la versión más reciente de Google Mobile Ads.
En la siguiente tabla, se muestra la versión máxima compatible del complemento Google Mobile Ads que debes usar según tu editor de Unity:
Editor de Unity | Versión del complemento Google Mobile Ads para Unity |
---|---|
2023.1 o una versión posterior | Más reciente |
2021.3.41f1 - 2022.3 | 9.1.0 |
2021.3.37f1 o una versión anterior | 8.5.3 |
Puedes actualizar Gradle de forma manual para usar el complemento Google Mobile Ads para Unity más reciente, incluidos los editores de Unity anteriores. Para compilar Android, selecciona la versión del editor de Unity que prefieras:
Requisitos previos
Antes de continuar, asegúrate de tener lo siguiente:
- Opcional: Para obtener detalles sobre la compilación para Android, consulta Versiones de Java en compilaciones de Android.
Habilita las plantillas de Gradle personalizadas
Ve a Project Settings > Player > Android > Publishing Settings > Build y habilita Custom Main Gradle Template
y Custom Gradle Properties Template
.

Establece el nivel de API objetivo en 34
En el menú principal, abre Edit > Project Settings > Player > Android > Other Settings y establece el Target API Level en API Level 34 o una versión posterior.

Ejecuta el proyecto de Android
En Android Studio, ejecuta gradle sync y ejecuta el proyecto.
Requisitos previos
Antes de continuar, asegúrate de tener lo siguiente:
- Descarga e instala la versión estable más reciente de Android Studio.
- Opcional: Para obtener detalles sobre la compilación para Android, consulta Versiones de Java en compilaciones de Android.
Habilita las plantillas de Gradle personalizadas
Ve a Project Settings > Player > Android > Publishing Settings > Build y habilita Custom Main Gradle Template
y Custom Gradle Properties Template
.

Establece el nivel de API objetivo en 34
En el menú principal, abre Edit > Project Settings > Player > Android > Other Settings y establece el Target API Level en API Level 34 o una versión posterior.

Cómo exportar a Android Studio
Para modificar la configuración de compilación de Android, selecciona File (o Unity Editor en macOS) > Build Settings y marca Export Project:

Abre Android Studio.
Esta sección contiene los pasos que se realizan en Android Studio.
Actualiza la configuración de JDK de Gradle
Abre la configuración de Gradle desde File (o Android Studio en MacOS) > Settings > Build > Execution > Deployment > Build Tools > Gradle. Busca el menú desplegable Gradle JDK y configura Gradle JDK para que use JDK 17 o una versión posterior.

Si no tienes JDK 17 instalado, selecciona las opciones Download JDK en la barra de menú de Gradle JDK y descarga una versión compatible. Te recomendamos el proveedor de tiempo de ejecución de JetBrains con compatibilidad con aarch64 para que coincida con lo que distribuye Android Studio.
Actualiza el archivo build.gradle a nivel del proyecto
Establece la versión de las herramientas de Gradle en 8.1.1
o una versión posterior.
plugins {
id 'com.android.application' version '8.1.1' apply false
id 'com.android.library' version '8.1.1' apply false
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Actualizar /gradle/gradle-wrapper.properties
Establece distributionUrl
para usar Gradle 8.1.1 o una versión posterior.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Ejecuta el proyecto de Android
En Android Studio, ejecuta gradle sync y ejecuta el proyecto.
Requisitos previos
Antes de continuar, asegúrate de tener lo siguiente:
- Descarga e instala la versión estable más reciente de Android Studio.
- Opcional: Para obtener detalles sobre la compilación para Android, consulta Versiones de Java en compilaciones de Android.
Habilita las plantillas de Gradle personalizadas
Ve a Project Settings > Player > Android > Publishing Settings > Build y habilita Custom Main Gradle Template
y Custom Gradle Properties Template
.

Establece el nivel de API objetivo en 34
En el menú principal, abre Edit > Project Settings > Player > Android > Other Settings y establece el Target API Level en API Level 34 o una versión posterior.

Cómo exportar a Android Studio
Para modificar la configuración de compilación de Android, selecciona File (o Unity Editor en macOS) > Build Settings y marca Export Project:

Si recibes una advertencia de que falta el nivel 34 de la API de la plataforma del SDK de Android, selecciona la opción "Update Android SDK".
Abre Android Studio.
Esta sección contiene los pasos que se realizan en Android Studio.
Actualiza la configuración de JDK de Gradle
Abre la configuración de Gradle desde File (o Android Studio en MacOS) > Settings > Build > Execution > Deployment > Build Tools > Gradle. Busca el menú desplegable Gradle JDK y configura Gradle JDK para que use JDK 17 o una versión posterior.

Si no tienes JDK 17 instalado, selecciona las opciones Download JDK en la barra de menú de Gradle JDK y descarga una versión compatible. Te recomendamos el proveedor de tiempo de ejecución de JetBrains con compatibilidad con aarch64 para que coincida con lo que distribuye Android Studio.
Actualiza el archivo build.gradle a nivel del proyecto
Establece la versión de las herramientas de Gradle en 8.1.1
o una versión posterior.
plugins {
id 'com.android.application' version '8.1.1' apply false
id 'com.android.library' version '8.1.1' apply false
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Actualizar /gradle/gradle-wrapper.properties
Establece distributionUrl
para usar Gradle 8.1.1 o una versión posterior.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Actualizar launcher/build.gradle
- Establece el atributo
namespace
con el valor del atributopackage
delauncher/AndroidManifest.xml
. - Establece
sourceCompatibility
ytargetCompatibility
en Java 17
apply plugin: 'com.android.application'
dependencies {
implementation project(':unityLibrary')
}
android {
namespace "com.google.android.gms.example"
compileSdkVersion 35
buildToolsVersion '35.0.0'
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
defaultConfig {
minSdkVersion 28
targetSdkVersion 35
applicationId 'com.google.android.gms.example'
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
}
versionCode 1
versionName '1.0'
}
aaptOptions {
noCompress = ['.unity3d', '.ress', '.resource', '.obb', '.bundle', '.unityexp']
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
}
lintOptions {
abortOnError false
}
buildTypes {
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt')
signingConfig signingConfigs.debug
jniDebuggable true
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt')
signingConfig signingConfigs.debug
}
}
packagingOptions {
doNotStrip '*/armeabi-v7a/*.so'
doNotStrip '*/arm64-v8a/*.so'
doNotStrip '*/x86/*.so'
doNotStrip '*/x86_64/*.so'
jniLibs {
useLegacyPackaging true
}
}
bundle {
language {
enableSplit = false
}
density {
enableSplit = false
}
abi {
enableSplit = true
}
}
}
apply from: '../unityLibrary/GoogleMobileAdsPlugin.androidlib/packaging_options.gradle'
Actualiza settings.gradle
a nivel del proyecto
Establece las secciones pluginManagement
y dependencyResolutionManagement
.
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
}
}
include ':launcher', ':unityLibrary'
include 'unityLibrary:GoogleMobileAdsPlugin.androidlib'
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
google()
mavenCentral()
flatDir {
dirs "${project(':unityLibrary').projectDir}/libs"
}
}
}
Actualiza unityLibrary/build.gradle
- Establece
namespace
con el valor"com.unity3d.player"
. - Establece
sourceCompatibility
ytargetCompatibility
enJavaVersion.VERSION_17
apply plugin: 'com.android.library'
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'com.google.android.gms:play-services-ads:23.6.0'
implementation 'com.google.android.ump:user-messaging-platform:3.1.0'
// Android Resolver Dependencies End
implementation(name: 'googlemobileads-unity', ext:'aar')
implementation project('GoogleMobileAdsPlugin.androidlib')
}
// Android Resolver Exclusions Start
android {
packagingOptions {
exclude ('/lib/armeabi/*' + '*')
exclude ('/lib/mips/*' + '*')
exclude ('/lib/mips64/*' + '*')
exclude ('/lib/x86/*' + '*')
}
}
// Android Resolver Exclusions End
android {
namespace "com.unity3d.player"
compileSdkVersion 34
buildToolsVersion '30.0.2'
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
defaultConfig {
minSdkVersion 28
targetSdkVersion 34
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64'
}
versionCode 1
versionName '1.0'
consumerProguardFiles 'proguard-unity.txt'
}
lintOptions {
abortOnError false
}
aaptOptions {
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
}
packagingOptions {
doNotStrip '*/armeabi-v7a/*.so'
doNotStrip '*/arm64-v8a/*.so'
doNotStrip '*/x86_64/*.so'
}
}
apply from: 'GoogleMobileAdsPlugin.androidlib/packaging_options.gradle'
gradle.projectsEvaluated { apply from: 'GoogleMobileAdsPlugin.androidlib/validate_dependencies.gradle' }
Actualiza unity/Library/GoogleMobileAdsPlugin.androidlib/build.gradle
Establece el atributo namespace
con el valor "com.google.unity.ads"
.
apply plugin: 'android-library'
dependencies {
implementation fileTree(dir: 'bin', include: ['.jar'])
implementation fileTree(dir: 'libs', include: ['.jar'])
}
android {
namespace "com.google.unity.ads"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
//java.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
}
compileSdkVersion 34
buildToolsVersion '30.0.2'
defaultConfig {
targetSdkVersion 31
}
lintOptions {
abortOnError false
}
}
Ejecuta el proyecto de Android
En Android Studio, ejecuta gradle sync y ejecuta el proyecto.