Unity Editor سازگاری اندروید

ویرایشگر یونیتی نسخه قفل شده به نسخه خاصی از Gradle است که می تواند با وابستگی های مورد نیاز بسته های اندرویدی جدیدتر مانند تبلیغات موبایل گوگل تضاد داشته باشد. راهنمای زیر به شما آموزش می دهد که چگونه یک بیلد اندروید بر روی نسخه های قبلی Unity Editor تولید کنید.

جدول زیر حداکثر نسخه افزونه Google Mobile Ads سازگار را برای استفاده بر اساس Unity Editor توصیه می کند.

ویرایشگر یونیتی نسخه پیشنهادی افزونه Google Mobile Ads Unity
2023.1 یا بالاتر آخرین
2021.3.41f1 - 2022.3 9.1.0
2021.3.37f1 یا قبل از آن 8.5.3

پیش نیازها

تنظیمات ساخت 2022.3 و قبلی را به روز کنید

Unity 2022.3 و نسخه‌های قبلی قبل از صادرات به Android Studio به تغییراتی در تنظیمات ساخت نیاز دارد.

baseProjectTemplate.gradle را ایجاد کنید

  1. قالب های سفارشی Gradle را فعال کنید. به Project Settings > Player > Android > Publishing Settings > Build بروید و: Custom Base Gradle Template را انتخاب کنید. این فایل Plugins/Android/baseProjectTemplate.gradle را تولید می کند.

  2. فایل Plugins/Android/baseProjectTemplate.gradle برای استفاده از ابزار Gradle نسخه 8.1.1 یا بالاتر تغییر دهید.

    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
    }
    

تغییرات اضافی برای Unity 2021.3.37f1 و نسخه های قبلی

Unity 2021.3.37f1 و نسخه های قبلی به تغییرات اضافی برای ارتقا سازگاری به Gradle 8.1.1 نیاز دارد. مراحل زیر را کامل کنید:

launcherTemplate.gradle را ایجاد کنید

  1. به Project Settings > Player > Android > Publishing Settings > Build بروید و Launcher Gradle Template را انتخاب کنید. این فایل Plugins/Android/launcherTemplate.gradle را ایجاد می کند.

  2. Plugins/Android/launcherTemplate.gradle تغییر دهید تا ویژگی فضای نام را در بر گیرد. مقدار ویژگی فضای نام باید با ویژگی بسته موجود در فایل AndroidManifest.xml ماژول راه‌انداز مطابقت داشته باشد.

    android {
        // TODO: Replace with your app's package name.
        namespace 'com.google.android.gms.example'
    }
    

mainTemplate.gradle را ایجاد کنید

  1. به Project Settings > Player > Android > Publishing Settings > Build بروید و Main Gradle Template را انتخاب کنید. این فایل Plugins/Android/mainTemplate.gradle را تولید می کند.

.

  1. Plugins/Android/mainTemplate.gradle تغییر دهید تا ویژگی فضای نام را با مقدار com.unity3d.player اضافه کنید.

    android {
        namespace 'com.unity3d.player'
    }
    

صادرات به Android Studio

  1. تنظیمات ساخت اندروید را تغییر دهید تا پروژه Unity صادر شود.

  2. برای صادرات به Android Studio، تنظیمات ساخت اندروید را تغییر دهید. File (یا Unity Editor در macOS) > Build Settings را انتخاب کنید و Export Project را علامت بزنید:

  3. دکمه Export را در پایین کادر گفتگوی Build Settings فشار دهید. یونیتی یک پروژه اندروید را در محل انتخاب شده تولید می کند.

  4. پروژه صادر شده را در Android Studio باز کنید.

پیکربندی Gradle JDK را برای استفاده از JDK 17 به روز کنید

  1. با استفاده از Android Studio، تنظیمات Gradle را از File (یا Android Studio در macOS) > Settings > Build, Execution, Deployment > Build Tools > Gradle باز کنید.
  2. منوی کشویی Gradle JDK را پیدا کنید. Gradle JDK را برای استفاده از JDK 17 تغییر دهید.

    اگر JDK 17 را نصب نکرده اید، گزینه Download JDK را از منوی کشویی Gradle JDK انتخاب کنید و نسخه سازگار را دانلود کنید. ما فروشنده JetBrains را با پشتیبانی arch64 توصیه می کنیم تا با آنچه Android Studio توزیع می کند مطابقت داشته باشد.

فایل های بسته بندی Gradle را به روز کنید

برای استفاده از Gradle 8.0.1 یا بالاتر، پارامتر distributionUrl را در داخل gradle/wrapper/gradle-wrapper.properties تغییر دهید.

   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

تغییرات اضافی Android Studio برای Unity 2021.3.37f1 و نسخه های قبلی

Unity 2021.3.37f1 و نسخه های قبلی به تغییرات اضافی برای ارتقا سازگاری به Gradle 8.1.1 نیاز دارد. مراحل زیر را کامل کنید:

  1. gradle.properties را تغییر دهید و ویژگی android.enableR8=false را حذف کنید.

  2. unityLibrary/GoogleMobileAdsPlugin.androidlib/build.gradle تغییر دهید و یک ویژگی فضای نام با مقدار "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
        }
    }
    

پروژه اندروید را اجرا کنید

پس از انجام این مراحل اپلیکیشن Unity آماده است. از Android Studio، gradle sync را اجرا کنید و پروژه را اجرا کنید .

،

ویرایشگر یونیتی نسخه قفل شده به نسخه خاصی از Gradle است که می تواند با وابستگی های مورد نیاز بسته های اندرویدی جدیدتر مانند تبلیغات موبایل گوگل تضاد داشته باشد. راهنمای زیر به شما آموزش می دهد که چگونه یک بیلد اندروید بر روی نسخه های قبلی Unity Editor تولید کنید.

جدول زیر حداکثر نسخه افزونه Google Mobile Ads سازگار را برای استفاده بر اساس Unity Editor توصیه می کند.

ویرایشگر یونیتی نسخه پیشنهادی افزونه Google Mobile Ads Unity
2023.1 یا بالاتر آخرین
2021.3.41f1 - 2022.3 9.1.0
2021.3.37f1 یا قبل از آن 8.5.3

پیش نیازها

تنظیمات ساخت 2022.3 و قبلی را به روز کنید

Unity 2022.3 و نسخه‌های قبلی قبل از صادرات به Android Studio به تغییراتی در تنظیمات ساخت نیاز دارد.

baseProjectTemplate.gradle را ایجاد کنید

  1. قالب های سفارشی Gradle را فعال کنید. به Project Settings > Player > Android > Publishing Settings > Build بروید و: Custom Base Gradle Template را انتخاب کنید. این فایل Plugins/Android/baseProjectTemplate.gradle را تولید می کند.

  2. فایل Plugins/Android/baseProjectTemplate.gradle برای استفاده از ابزار Gradle نسخه 8.1.1 یا بالاتر تغییر دهید.

    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
    }
    

تغییرات اضافی برای Unity 2021.3.37f1 و نسخه های قبلی

Unity 2021.3.37f1 و نسخه های قبلی به تغییرات اضافی برای ارتقا سازگاری به Gradle 8.1.1 نیاز دارد. مراحل زیر را کامل کنید:

launcherTemplate.gradle را ایجاد کنید

  1. به Project Settings > Player > Android > Publishing Settings > Build بروید و Launcher Gradle Template را انتخاب کنید. این فایل Plugins/Android/launcherTemplate.gradle را ایجاد می کند.

  2. Plugins/Android/launcherTemplate.gradle تغییر دهید تا ویژگی فضای نام را در بر گیرد. مقدار ویژگی فضای نام باید با ویژگی بسته موجود در فایل AndroidManifest.xml ماژول راه‌انداز مطابقت داشته باشد.

    android {
        // TODO: Replace with your app's package name.
        namespace 'com.google.android.gms.example'
    }
    

mainTemplate.gradle را ایجاد کنید

  1. به Project Settings > Player > Android > Publishing Settings > Build بروید و Main Gradle Template را انتخاب کنید. این فایل Plugins/Android/mainTemplate.gradle را تولید می کند.

.

  1. Plugins/Android/mainTemplate.gradle تغییر دهید تا ویژگی فضای نام را با مقدار com.unity3d.player اضافه کنید.

    android {
        namespace 'com.unity3d.player'
    }
    

صادرات به Android Studio

  1. تنظیمات ساخت اندروید را تغییر دهید تا پروژه Unity صادر شود.

  2. برای صادرات به Android Studio، تنظیمات ساخت اندروید را تغییر دهید. File (یا Unity Editor در macOS) > Build Settings را انتخاب کنید و Export Project را علامت بزنید:

  3. دکمه Export را در پایین کادر گفتگوی Build Settings فشار دهید. یونیتی یک پروژه اندروید را در محل انتخاب شده تولید می کند.

  4. پروژه صادر شده را در Android Studio باز کنید.

پیکربندی Gradle JDK را برای استفاده از JDK 17 به روز کنید

  1. با استفاده از Android Studio، تنظیمات Gradle را از File (یا Android Studio در macOS) > Settings > Build, Execution, Deployment > Build Tools > Gradle باز کنید.
  2. منوی کشویی Gradle JDK را پیدا کنید. Gradle JDK را برای استفاده از JDK 17 تغییر دهید.

    اگر JDK 17 را نصب نکرده اید، گزینه Download JDK را از منوی کشویی Gradle JDK انتخاب کنید و نسخه سازگار را دانلود کنید. ما فروشنده JetBrains را با پشتیبانی arch64 توصیه می کنیم تا با آنچه Android Studio توزیع می کند مطابقت داشته باشد.

فایل های بسته بندی Gradle را به روز کنید

برای استفاده از Gradle 8.0.1 یا بالاتر، پارامتر distributionUrl را در داخل gradle/wrapper/gradle-wrapper.properties تغییر دهید.

   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

تغییرات اضافی Android Studio برای Unity 2021.3.37f1 و نسخه های قبلی

Unity 2021.3.37f1 و نسخه های قبلی به تغییرات اضافی برای ارتقا سازگاری به Gradle 8.1.1 نیاز دارد. مراحل زیر را کامل کنید:

  1. gradle.properties را تغییر دهید و ویژگی android.enableR8=false را حذف کنید.

  2. unityLibrary/GoogleMobileAdsPlugin.androidlib/build.gradle تغییر دهید و یک ویژگی فضای نام با مقدار "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
        }
    }
    

پروژه اندروید را اجرا کنید

پس از انجام این مراحل اپلیکیشن Unity آماده است. از Android Studio، gradle sync را اجرا کنید و پروژه را اجرا کنید .