Edytor Unity jest zablokowany na określoną wersję Gradle. Starsze wersje edytora Unity korzystają z starszych wersji Gradle, które są niezgodne z najnowszą wersją reklam mobilnych Google.
W tabeli poniżej znajdziesz maksymalną zgodną wersję wtyczki reklam mobilnych Google, której możesz używać w zależności od używanej wersji edytora Unity:
Edytor Unity | Wersja wtyczki reklam mobilnych Google dla środowiska Unity |
---|---|
2023.1 lub nowsza | Najnowsze |
2021.3.41f1 – 2022.3 | 9.1.0 |
2021.3.37f1 lub starsza | 8.5.3 |
Możesz ręcznie zaktualizować Gradle, aby używać najnowszej wersji wtyczki reklam mobilnych Google dla środowiska Unity, w tym w starszych edytorach Unity. Aby skompilować aplikację na Androida, wybierz preferowaną wersję edytora Unity:
Wymagania wstępne
Zanim przejdziesz dalej, sprawdź, czy masz:
- Opcjonalnie: szczegółowe informacje o kompilowaniu aplikacji na Androida znajdziesz w artykule Java w kompilacji na Androida.
Włączanie niestandardowych szablonów Gradle
Kliknij Ustawienia projektu > Odtwarzacz > Android > Ustawienia publikacji > Kompilacja i włącz opcje Custom Main Gradle Template
i Custom Gradle Properties Template
.

Ustaw docelowy poziom interfejsu API 34
W menu głównym kliknij Edytuj > Ustawienia projektu > Odtwarzacz > Android > Inne ustawienia i ustaw Docelowy poziom interfejsu API na poziom interfejsu API 34 lub wyższy.

Uruchamianie projektu na Androida
W Android Studio uruchom polecenie gradle sync i uruchom projekt.
Wymagania wstępne
Zanim przejdziesz dalej, sprawdź, czy masz:
- Pobierz i zainstaluj najnowszą stabilną wersję Android Studio.
- Opcjonalnie: szczegółowe informacje o kompilowaniu aplikacji na Androida znajdziesz w artykule Java w kompilacji na Androida.
Włączanie niestandardowych szablonów Gradle
Kliknij Ustawienia projektu > Odtwarzacz > Android > Ustawienia publikacji > Kompilacja i włącz opcje Custom Main Gradle Template
i Custom Gradle Properties Template
.

Ustaw docelowy poziom interfejsu API 34
W menu głównym kliknij Edytuj > Ustawienia projektu > Odtwarzacz > Android > Inne ustawienia i ustaw Docelowy poziom interfejsu API na poziom interfejsu API 34 lub wyższy.

Eksportowanie do Android Studio
Zmień ustawienia kompilacji na Androida, klikając Plik (lub Edytor Unity na komputerze Mac) > Ustawienia kompilacji i zaznacz Eksportuj projekt:

Otwórz Android Studio
Ta sekcja zawiera instrukcje dotyczące wykonywania czynności w Android Studio.
Aktualizowanie konfiguracji JDK w Gradle
Otwórz ustawienia Gradle w sekcji Plik (lub Android Studio na komputerze Mac) > Ustawienia > Kompilacja > Wykonywanie > Wdrażanie > Narzędzia kompilacji > Gradle. Odszukaj menu Gradle JDK i ustaw Gradle JDK tak, aby używać JDK 17 lub nowszej wersji.

Jeśli nie masz zainstalowanej wersji JDK 17, na pasku menu JDK w Gradle wybierz opcję Pobierz JDK i pobierz zgodną wersję. Zalecamy użycie pakietu JetBrains Runtime z obsługą aarch64, który jest zgodny z pakietem rozprowadzanym przez Android Studio.
Zaktualizuj plik build.gradle na poziomie projektu
Ustaw wersję narzędzi Gradle na 8.1.1
lub nowszą.
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
}
Zaktualizuj: /gradle/gradle-wrapper.properties
Ustaw distributionUrl
na Gradle 8.1.1 lub nowszą wersję.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Uruchamianie projektu na Androida
W Android Studio uruchom polecenie gradle sync i uruchom projekt.
Wymagania wstępne
Zanim przejdziesz dalej, sprawdź, czy masz:
- Pobierz i zainstaluj najnowszą stabilną wersję Android Studio.
- Opcjonalnie: szczegółowe informacje o kompilowaniu aplikacji na Androida znajdziesz w artykule Java w kompilacji na Androida.
Włączanie niestandardowych szablonów Gradle
Kliknij Ustawienia projektu > Odtwarzacz > Android > Ustawienia publikacji > Kompilacja i włącz opcje Custom Main Gradle Template
i Custom Gradle Properties Template
.

Ustaw docelowy poziom interfejsu API 34
W menu głównym kliknij Edytuj > Ustawienia projektu > Odtwarzacz > Android > Inne ustawienia i ustaw Docelowy poziom interfejsu API na poziom interfejsu API 34 lub wyższy.

Eksportowanie do Android Studio
Zmień ustawienia kompilacji na Androida, klikając Plik (lub Edytor Unity na komputerze Mac) > Ustawienia kompilacji i zaznacz Eksportuj projekt:

Jeśli pojawi się ostrzeżenie, że brakuje interfejsu API platformy pakietu Android SDK w poziomie 34, wybierz opcję „Zaktualizuj pakiet Android SDK”.
Otwórz Android Studio
Ta sekcja zawiera instrukcje dotyczące wykonywania czynności w Android Studio.
Aktualizowanie konfiguracji JDK w Gradle
Otwórz ustawienia Gradle w sekcji Plik (lub Android Studio na komputerze Mac) > Ustawienia > Kompilacja > Wykonywanie > Wdrażanie > Narzędzia kompilacji > Gradle. Odszukaj menu Gradle JDK i ustaw Gradle JDK tak, aby używać JDK 17 lub nowszej wersji.

Jeśli nie masz zainstalowanej wersji JDK 17, na pasku menu JDK w Gradle wybierz opcję Pobierz JDK i pobierz zgodną wersję. Zalecamy użycie pakietu JetBrains Runtime z obsługą aarch64, który jest zgodny z pakietem rozprowadzanym przez Android Studio.
Zaktualizuj plik build.gradle na poziomie projektu
Ustaw wersję narzędzi Gradle na 8.1.1
lub nowszą.
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
}
Zaktualizuj: /gradle/gradle-wrapper.properties
Ustaw distributionUrl
na Gradle 8.1.1 lub nowszą wersję.
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
Zaktualizuj: launcher/build.gradle
- Ustaw atrybut
namespace
za pomocą wartości atrybutupackage
z elementulauncher/AndroidManifest.xml
. - Ustaw
sourceCompatibility
itargetCompatibility
na 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'
Zaktualizuj settings.gradle
na poziomie projektu
Skonfiguruj sekcje pluginManagement
i 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"
}
}
}
Zaktualizuj plik unityLibrary/build.gradle
- Ustaw zmienną
namespace
na wartość"com.unity3d.player"
. - Ustaw wartości
sourceCompatibility
itargetCompatibility
naJavaVersion.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' }
Zaktualizuj plik unity/Library/GoogleMobileAdsPlugin.androidlib/build.gradle
Ustaw atrybut namespace
na "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
}
}
Uruchamianie projektu na Androida
W Android Studio uruchom polecenie gradle sync i uruchom projekt.