L'éditeur Unity est verrouillé sur une version spécifique de Gradle, ce qui peut entrer en conflit avec les dépendances requises par les packages Android plus récents, tels que Google Mobile Ads. Le guide suivant explique comment créer un build Android sur des versions antérieures de l'éditeur Unity.
Le tableau suivant recommande la version maximale du plug-in Google Mobile Ads compatible à utiliser en fonction de votre éditeur Unity.
Éditeur Unity | Version recommandée du plug-in Google Mobile Ads Unity |
---|---|
2023.1 ou version ultérieure | Le plus récent |
2021.3.41f1 - 2022.3 | 9.1.0 |
2021.3.37f1 ou version antérieure | 8.5.3 |
Prérequis
- Téléchargez et installez la dernière version stable d'Android Studio.
- Pour mieux comprendre la compilation pour Android, consultez Versions de Java dans les builds Android.
Mettre à jour les paramètres de compilation 2022.3 et versions antérieures
Unity 2022.3 et les versions antérieures nécessitent des modifications des paramètres de compilation avant l'exportation vers Android Studio.
Générer le fichier baseProjectTemplate.gradle
Activez les modèles Gradle personnalisés. Accédez à Project Settings > Player > Android > Publishing Settings > Build (Paramètres du projet > Lecteur > Android > Paramètres de publication > Compilation), puis sélectionnez Custom Base Gradle Template (Modèle de base Gradle personnalisé). Le fichier
Plugins/Android/baseProjectTemplate.gradle
est alors généré.Modifiez le fichier
Plugins/Android/baseProjectTemplate.gradle
pour utiliser les outils Gradle version 8.1.1 ou ultérieure.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 }
Modifications supplémentaires pour Unity 2021.3.37f1 et versions antérieures
Unity 2021.3.37f1 et les versions antérieures nécessitent des modifications supplémentaires pour mettre à niveau la compatibilité avec Gradle 8.1.1. Procédez comme suit :
Générer launcherTemplate.gradle
Accédez à Project Settings > Player > Android > Publishing Settings > Build (Paramètres du projet > Lecteur > Android > Paramètres de publication > Compilation), puis sélectionnez Launcher Gradle Template (Modèle Gradle du lanceur). Le fichier
Plugins/Android/launcherTemplate.gradle
est alors généré.Modifiez
Plugins/Android/launcherTemplate.gradle
pour inclure l'attribut d'espace de noms. La valeur de l'attribut d'espace de noms doit correspondre à l'attribut de package trouvé dans le fichierAndroidManifest.xml
du module de lanceur.android { // TODO: Replace with your app's package name. namespace 'com.google.android.gms.example' }
Générer mainTemplate.gradle
- Accédez à Project Settings > Player > Android > Publishing Settings > Build (Paramètres du projet > Lecteur > Android > Paramètres de publication > Compilation), puis sélectionnez Main Gradle Template (Modèle Gradle principal). Le fichier
Plugins/Android/mainTemplate.gradle
est alors généré.
.
Modifiez
Plugins/Android/mainTemplate.gradle
pour inclure l'attribut de nom d'espace de noms avec la valeurcom.unity3d.player
.android { namespace 'com.unity3d.player' }
Exporter vers Android Studio
Modifiez les paramètres de compilation Android pour exporter le projet Unity.
Pour exporter vers Android Studio, modifiez les paramètres de compilation Android. Sélectionnez File (Fichier) ou Unity Editor (Éditeur Unity) > Build Settings (Paramètres de compilation) et cochez Export Project (Exporter le projet).
Appuyez sur le bouton Export (Exporter) en bas de la boîte de dialogue "Build Settings" (Paramètres de compilation). Unity génère un projet Android à l'emplacement sélectionné.
Ouvrez le projet exporté dans Android Studio.
Mettre à jour la configuration du JDK Gradle pour utiliser JDK 17
- Dans Android Studio, ouvrez les paramètres Gradle à partir de File (Fichier) (ou Android Studio sous macOS) > Settings (Paramètres) > Build, Execution, Deployment (Compilation, exécution, déploiement) > Build Tools (Outils de compilation) > Gradle.
Recherchez la liste déroulante Gradle JDK. Modifiez le JDK Gradle pour utiliser JDK 17.
Si vous n'avez pas installé JDK 17, sélectionnez l'option Download JDK (Télécharger le JDK) dans le menu déroulant JDK Gradle, puis téléchargez une version compatible. Nous vous recommandons d'utiliser le fournisseur de runtime JetBrains avec la prise en charge de
arch64
, pour qu'il corresponde à ce que distribue Android Studio.
Mettre à jour les fichiers de wrapper Gradle
Modifiez le paramètre distributionUrl dans gradle/wrapper/gradle-wrapper.properties
pour utiliser Gradle 8.0.1 ou une version ultérieure.
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
Modifications supplémentaires apportées à Android Studio pour Unity 2021.3.37f1 et versions antérieures
Unity 2021.3.37f1 et les versions antérieures nécessitent des modifications supplémentaires pour mettre à niveau la compatibilité avec Gradle 8.1.1. Procédez comme suit :
Modifiez
gradle.properties
et supprimez l'attributandroid.enableR8=false
.Modifiez
unityLibrary/GoogleMobileAdsPlugin.androidlib/build.gradle
et ajoutez un attribut d'espace de noms avec la valeur"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 35 buildToolsVersion '30.0.3' defaultConfig { targetSdkVersion 31 } lintOptions { abortOnError false } }
Exécuter le projet Android
Une fois ces étapes terminées, l'application Unity est prête. Dans Android Studio, exécutez la synchronisation Gradle, puis exécutez le projet.