L'editor di Unity è bloccato su una versione specifica di Gradle. Le versioni precedenti di Unity Editor utilizzano versioni precedenti di Gradle che non sono compatibili con l'ultima versione di Google Mobile Ads.
La tabella seguente mostra la versione massima del plug-in Google Mobile Ads compatibile da utilizzare in base a Unity Editor:
Unity Editor | Versione del plug-in Unity di Google Mobile Ads |
---|---|
2023.1 o versioni successive | Ultimi |
2021.3.41f1 - 2022.3 | 9.1.0 |
2021.3.37f1 o versioni precedenti | 8.5.3 |
Puoi aggiornare manualmente Gradle per utilizzare il plug-in Unity di Google Mobile Ads più recente, incluso gli editor Unity precedenti. Per compilare per Android, seleziona la versione di Unity Editor che preferisci:
2023.1 o versioni successive
Prerequisiti
Prima di continuare, assicurati di avere quanto segue:
- (Facoltativo) Per informazioni dettagliate sulla compilazione per Android, consulta Versioni Java nelle build per Android
Attivare i modelli Gradle personalizzati
Vai a Impostazioni progetto > Player > Android > Impostazioni di pubblicazione > Build
e attiva Custom Main Gradle Template
e Custom Gradle Properties Template
.
![Attivare i modelli Gradle personalizzati](https://developers.google.cn/static/admob/images/unity_projectsettings_gradle.png?hl=it)
Imposta il livello API target 34
Dal menu principale, apri Modifica > Impostazioni progetto > Player > Android > Altre impostazioni e imposta Livello API target su Livello API 34 o versioni successive.
![Imposta il livello API target](https://developers.google.cn/static/admob/images/unity_projectsettings_apilevel.png?hl=it)
Esegui il progetto Android
Da Android Studio, esegui gradle sync e esegui il progetto.
2021.3.4f1 - 2022.3
Prerequisiti
Prima di continuare, assicurati di avere quanto segue:
- Scarica e installa l'ultima versione stabile di Android Studio.
- (Facoltativo) Per informazioni dettagliate sulla compilazione per Android, consulta Versioni Java nelle build per Android
Attivare i modelli Gradle personalizzati
Vai a Impostazioni progetto > Player > Android > Impostazioni di pubblicazione > Build
e attiva Custom Main Gradle Template
e Custom Gradle Properties Template
.
![Attivare i modelli Gradle personalizzati](https://developers.google.cn/static/admob/images/unity_projectsettings_gradle.png?hl=it)
Imposta il livello API target 34
Dal menu principale, apri Modifica > Impostazioni progetto > Player > Android > Altre impostazioni e imposta Livello API target su Livello API 34 o versioni successive.
![Imposta il livello API target](https://developers.google.cn/static/admob/images/unity_projectsettings_apilevel.png?hl=it)
Esportazione in Android Studio
Modifica le impostazioni di compilazione di Android selezionando File (o Unity Editor su macOS) > Impostazioni di compilazione e selezionando Esporta progetto:
![Esporta progetto](https://developers.google.cn/static/admob/images/unity_projectsettings_export.png?hl=it)
Apri Android Studio
Questa sezione contiene i passaggi eseguiti in Android Studio.
Aggiorna la configurazione JDK di Gradle
Apri le impostazioni di Gradle da File (o Android Studio su macOS) > Impostazioni > Build > Esecuzione > Deployment > Strumenti di compilazione > Gradle. Individua il menu a discesa Gradle JDK e imposta Gradle JDK in modo da utilizzare JDK 17 o versioni successive.
![Aggiorna la configurazione JDK di Gradle](https://developers.google.cn/static/admob/images/unity_projectsettings_jdk.png?hl=it)
Se non hai installato JDK 17, seleziona le opzioni Scarica JDK dalla barra del menu JDK di Gradle e scarica una versione compatibile. Consigliamo il fornitore del runtime JetBrains con supporto aarch64, in modo che corrisponda a quello distribuito da Android Studio.
Aggiorna il file build.gradle a livello di progetto
Imposta la versione degli strumenti Gradle su 8.1.1
o successiva.
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
}
Aggiorna /gradle/gradle-wrapper.properties
Imposta distributionUrl
per utilizzare Gradle 8.1.1 o versioni successive.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Esegui il progetto Android
Da Android Studio, esegui gradle sync e esegui il progetto.
2021.3.37f1 - 2019.4
Prerequisiti
Prima di continuare, assicurati di avere quanto segue:
- Scarica e installa l'ultima versione stabile di Android Studio.
- (Facoltativo) Per informazioni dettagliate sulla compilazione per Android, consulta Versioni Java nelle build per Android
Attivare i modelli Gradle personalizzati
Vai a Impostazioni progetto > Player > Android > Impostazioni di pubblicazione > Build
e attiva Custom Main Gradle Template
e Custom Gradle Properties Template
.
![Attivare i modelli Gradle personalizzati](https://developers.google.cn/static/admob/images/unity_projectsettings_gradle.png?hl=it)
Imposta il livello API target 34
Dal menu principale, apri Modifica > Impostazioni progetto > Player > Android > Altre impostazioni e imposta Livello API target su Livello API 34 o versioni successive.
![Imposta il livello API target](https://developers.google.cn/static/admob/images/unity_projectsettings_apilevel.png?hl=it)
Esportazione in Android Studio
Modifica le impostazioni di compilazione di Android selezionando File (o Unity Editor su macOS) > Impostazioni di compilazione e selezionando Esporta progetto:
![Esporta progetto](https://developers.google.cn/static/admob/images/unity_projectsettings_export.png?hl=it)
Se ricevi un avviso che indica che manca il livello 34 dell'API della piattaforma SDK Android, seleziona l'opzione "Aggiorna SDK Android".
Apri Android Studio
Questa sezione contiene i passaggi eseguiti in Android Studio.
Aggiorna la configurazione JDK di Gradle
Apri le impostazioni di Gradle da File (o Android Studio su macOS) > Impostazioni > Build > Esecuzione > Deployment > Strumenti di compilazione > Gradle. Individua il menu a discesa Gradle JDK e imposta Gradle JDK in modo da utilizzare JDK 17 o versioni successive.
![Aggiorna la configurazione JDK di Gradle](https://developers.google.cn/static/admob/images/unity_projectsettings_jdk.png?hl=it)
Se non hai installato JDK 17, seleziona le opzioni Scarica JDK dalla barra del menu JDK di Gradle e scarica una versione compatibile. Consigliamo il fornitore del runtime JetBrains con supporto aarch64, in modo che corrisponda a quello distribuito da Android Studio.
Aggiorna il file build.gradle a livello di progetto
Imposta la versione degli strumenti Gradle su 8.1.1
o successiva.
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
}
Aggiorna /gradle/gradle-wrapper.properties
Imposta distributionUrl
per utilizzare Gradle 8.1.1 o versioni successive.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Aggiorna launcher/build.gradle
- Imposta l'attributo
namespace
utilizzando il valore dell'attributopackage
dilauncher/AndroidManifest.xml
- Imposta
sourceCompatibility
etargetCompatibility
su 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'
Aggiorna settings.gradle
a livello di progetto
Imposta le sezioni pluginManagement
e 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"
}
}
}
Aggiorna unityLibrary/build.gradle
- Imposta
namespace
con il valore"com.unity3d.player"
- Imposta
sourceCompatibility
etargetCompatibility
suJavaVersion.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' }
Aggiorna unity/Library/GoogleMobileAdsPlugin.androidlib/build.gradle
Imposta l'attributo namespace
con il valore "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
}
}
Esegui il progetto Android
Da Android Studio, esegui gradle sync e esegui il progetto.