O Unity Editor está bloqueado para uma versão específica do Gradle, o que pode entrar em conflito com as dependências exigidas por pacotes mais recentes do Android, como os anúncios para dispositivos móveis do Google. O guia a seguir ensina como produzir um build do Android em versões anteriores do Editor do Unity.
A tabela a seguir recomenda a versão máxima do plug-in de anúncios para dispositivos móveis do Google que pode ser usada com base no Unity Editor.
Editor do Unity | Versão recomendada do plug-in dos anúncios para dispositivos móveis do Google para Unity |
---|---|
2023.1 ou mais recente | Mais recente |
2021.3.41f1 - 2022.3 | 9.1.0 |
2021.3.37f1 ou anterior | 8.5.3 |
Pré-requisitos
- Faça o download e instale a versão estável mais recente do Android Studio.
- Para entender melhor como criar para Android, leia Versões Java em builds do Android.
Atualizar as configurações de build 2022.3 e anteriores
O Unity 2022.3 e versões anteriores exigem mudanças nas configurações de build antes da exportação para o Android Studio.
Gerar o baseProjectTemplate.gradle
Ative modelos personalizados do Gradle. Acesse Project Settings > Player > Android > Publishing Settings > Build e selecione: Custom Base Gradle Template. Isso gera o arquivo
Plugins/Android/baseProjectTemplate.gradle
.Modifique o arquivo
Plugins/Android/baseProjectTemplate.gradle
para usar as ferramentas do Gradle versão 8.1.1 ou mais recente.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 }
Outras mudanças para o Unity 2021.3.37f1 e versões anteriores
O Unity 2021.3.37f1 e versões anteriores exigem mudanças adicionais para fazer upgrade da compatibilidade para o Gradle 8.1.1. Siga estas etapas:
Gerar launcherTemplate.gradle
Acesse Project Settings > Player > Android > Publishing Settings > Build e selecione Launcher Gradle Template. Isso gera o arquivo
Plugins/Android/launcherTemplate.gradle
.Modifique
Plugins/Android/launcherTemplate.gradle
para incluir o atributo de namespace. O valor do atributo de namespace precisa corresponder ao atributo do pacote encontrado no arquivoAndroidManifest.xml
do módulo de inicialização.android { // TODO: Replace with your app's package name. namespace 'com.google.android.gms.example' }
Gerar mainTemplate.gradle
- Acesse Project Settings > Player > Android > Publishing Settings > Build
e selecione Main Gradle Template. Isso gera o
arquivo
Plugins/Android/mainTemplate.gradle
.
.
Modifique
Plugins/Android/mainTemplate.gradle
para incluir o atributo de namespace com o valorcom.unity3d.player
.android { namespace 'com.unity3d.player' }
Exportar para o Android Studio
Modifique as configurações de build do Android para exportar o projeto do Unity.
Para exportar para o Android Studio, modifique as configurações de build do Android. Selecione File (ou Unity Editor no macOS) > Build Settings e marque Export Project:
Pressione o botão Export na parte de baixo da caixa de diálogo "Build Settings". O Unity gera um projeto Android no local selecionado.
Abra o projeto exportado no Android Studio.
Atualizar a configuração do JDK do Gradle para usar o JDK 17
- No Android Studio, abra as configurações do Gradle em File (ou Android Studio no macOS) > Settings > Build, Execution, Deployment > Build Tools > Gradle.
Localize o menu suspenso Gradle JDK. Modifique o JDK do Gradle para usar o JDK 17.
Se o JDK 17 não estiver instalado, selecione a opção Download JDK no menu suspenso do JDK do Gradle e faça o download de uma versão compatível. Recomendamos o fornecedor do ambiente de execução do JetBrains com suporte a
arch64
, para corresponder ao que o Android Studio distribui.
Atualizar arquivos do wrapper do Gradle
Modifique o parâmetro distributionUrl em gradle/wrapper/gradle-wrapper.properties
para usar o Gradle 8.0.1 ou mais recente.
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
Outras mudanças do Android Studio para o Unity 2021.3.37f1 e versões anteriores
O Unity 2021.3.37f1 e versões anteriores exigem mudanças adicionais para fazer upgrade da compatibilidade com o Gradle 8.1.1. Siga estas etapas:
Modifique o
gradle.properties
e remova o atributoandroid.enableR8=false
.Modifique
unityLibrary/GoogleMobileAdsPlugin.androidlib/build.gradle
e adicione um atributo de namespace com o 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 35 buildToolsVersion '30.0.3' defaultConfig { targetSdkVersion 31 } lintOptions { abortOnError false } }
Executar o projeto Android
Depois de concluir essas etapas, o aplicativo Unity estará pronto. No Android Studio, execute a sincronização do Gradle e execute o projeto.