ইউনিটি এডিটর অ্যান্ড্রয়েড সামঞ্জস্য

ইউনিটি এডিটর হল গ্রেডলের একটি নির্দিষ্ট সংস্করণে লক করা সংস্করণ যা নতুন অ্যান্ড্রয়েড প্যাকেজ যেমন Google মোবাইল বিজ্ঞাপনগুলির জন্য প্রয়োজনীয় নির্ভরতার সাথে বিরোধ করতে পারে। ইউনিটি এডিটরের পূর্ববর্তী সংস্করণগুলিতে কীভাবে একটি অ্যান্ড্রয়েড বিল্ড তৈরি করবেন তা নিম্নলিখিত নির্দেশিকা আপনাকে নির্দেশ করে।

নিম্নলিখিত টেবিলটি আপনার ইউনিটি এডিটরের উপর ভিত্তি করে ব্যবহার করার জন্য সর্বাধিক সামঞ্জস্যপূর্ণ Google মোবাইল বিজ্ঞাপন প্লাগইন সংস্করণের সুপারিশ করে।

ঐক্য সম্পাদক মো প্রস্তাবিত Google মোবাইল বিজ্ঞাপন ইউনিটি প্লাগইন সংস্করণ
2023.1 বা তার বেশি সর্বশেষ
2021.3.41f1 - 2022.3 9.1.0
2021.3.37f1 বা তার আগে 8.5.3

পূর্বশর্ত

2022.3 এবং আগের বিল্ড সেটিংস আপডেট করুন

ইউনিটি 2022.3 এবং তার আগে অ্যান্ড্রয়েড স্টুডিওতে এক্সপোর্ট করার আগে বিল্ড সেটিং পরিবর্তন করতে হবে।

baseProjectTemplate.gradle তৈরি করুন

  1. কাস্টম গ্রেডল টেমপ্লেট সক্ষম করুন। প্রজেক্ট সেটিংস > প্লেয়ার > অ্যান্ড্রয়েড > প্রকাশনা সেটিংস > বিল্ড এ যান এবং নির্বাচন করুন: কাস্টম বেস গ্রেডল টেমপ্লেট । এটি Plugins/Android/baseProjectTemplate.gradle ফাইল তৈরি করে।

  2. Gradle টুলস সংস্করণ 8.1.1 বা উচ্চতর ব্যবহার করতে Plugins/Android/baseProjectTemplate.gradle ফাইল পরিবর্তন করুন।

    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
    }
    

ইউনিটি 2021.3.37f1 এবং তার আগের জন্য অতিরিক্ত পরিবর্তন

ইউনিটি 2021.3.37f1 এবং তার আগে গ্রেডল 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. com.unity3d.player মান সহ নামস্থান বৈশিষ্ট্য অন্তর্ভুক্ত করতে Plugins/Android/mainTemplate.gradle পরিবর্তন করুন।

    android {
        namespace 'com.unity3d.player'
    }
    

অ্যান্ড্রয়েড স্টুডিওতে রপ্তানি করুন

  1. ইউনিটি প্রজেক্ট এক্সপোর্ট করতে অ্যান্ড্রয়েড বিল্ড সেটিংস পরিবর্তন করুন।

  2. অ্যান্ড্রয়েড স্টুডিওতে এক্সপোর্ট করতে, অ্যান্ড্রয়েড বিল্ড সেটিংস পরিবর্তন করুন। ফাইল নির্বাচন করুন (বা macOS-এ ইউনিটি এডিটর ) > সেটিংস তৈরি করুন এবং এক্সপোর্ট প্রজেক্ট চেক করুন:

  3. বিল্ড সেটিংস ডায়ালগের নীচে রপ্তানি বোতাম টিপুন। ইউনিটি নির্বাচিত স্থানে একটি অ্যান্ড্রয়েড প্রকল্প তৈরি করে।

  4. অ্যান্ড্রয়েড স্টুডিওতে রপ্তানি করা প্রকল্পটি খুলুন।

JDK 17 ব্যবহার করতে Gradle JDK কনফিগারেশন আপডেট করুন

  1. অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে, ফাইল থেকে গ্রেডল সেটিংস খুলুন (বা ম্যাকওএস-এ অ্যান্ড্রয়েড স্টুডিও ) > সেটিংস > বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট > বিল্ড টুলস > গ্রেডল
  2. Gradle JDK ড্রপ-ডাউন সনাক্ত করুন। JDK 17 ব্যবহার করতে Gradle JDK পরিবর্তন করুন।

    আপনার যদি JDK 17 ইনস্টল না থাকে তবে Gradle JDK ড্রপ-ডাউন মেনু থেকে ডাউনলোড JDK বিকল্পটি নির্বাচন করুন এবং একটি সামঞ্জস্যপূর্ণ সংস্করণ ডাউনলোড করুন। Android স্টুডিও যা বিতরণ করে তার সাথে মেলে আমরা arch64 সমর্থন সহ JetBrains রানটাইম বিক্রেতাকে সুপারিশ করি।

Gradle wrapper ফাইল আপডেট করুন

Gradle 8.0.1 বা উচ্চতর ব্যবহার করতে gradle/wrapper/gradle-wrapper.properties ভিতরে distributionUrl প্যারামিটার পরিবর্তন করুন।

   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

Unity 2021.3.37f1 এবং তার আগের সংস্করণের জন্য অতিরিক্ত Android স্টুডিও পরিবর্তন

ইউনিটি 2021.3.37f1 এবং তার আগের গ্রেডল 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
        }
    }
    

অ্যান্ড্রয়েড প্রজেক্ট চালান

এই ধাপগুলি সম্পন্ন করার পরে ইউনিটি অ্যাপ্লিকেশন প্রস্তুত। অ্যান্ড্রয়েড স্টুডিও থেকে, গ্রেডল সিঙ্ক চালান এবং প্রকল্পটি চালান

,

ইউনিটি এডিটর হল গ্রেডলের একটি নির্দিষ্ট সংস্করণে লক করা সংস্করণ যা নতুন অ্যান্ড্রয়েড প্যাকেজ যেমন Google মোবাইল বিজ্ঞাপনগুলির জন্য প্রয়োজনীয় নির্ভরতার সাথে বিরোধ করতে পারে। ইউনিটি এডিটরের পূর্ববর্তী সংস্করণগুলিতে কীভাবে একটি অ্যান্ড্রয়েড বিল্ড তৈরি করবেন তা নিম্নলিখিত নির্দেশিকা আপনাকে নির্দেশ করে।

নিম্নলিখিত টেবিলটি আপনার ইউনিটি এডিটরের উপর ভিত্তি করে ব্যবহার করার জন্য সর্বাধিক সামঞ্জস্যপূর্ণ Google মোবাইল বিজ্ঞাপন প্লাগইন সংস্করণের সুপারিশ করে।

ঐক্য সম্পাদক মো প্রস্তাবিত Google মোবাইল বিজ্ঞাপন ইউনিটি প্লাগইন সংস্করণ
2023.1 বা তার বেশি সর্বশেষ
2021.3.41f1 - 2022.3 9.1.0
2021.3.37f1 বা তার আগে 8.5.3

পূর্বশর্ত

2022.3 এবং আগের বিল্ড সেটিংস আপডেট করুন

ইউনিটি 2022.3 এবং তার আগে অ্যান্ড্রয়েড স্টুডিওতে এক্সপোর্ট করার আগে বিল্ড সেটিং পরিবর্তন করতে হবে।

baseProjectTemplate.gradle তৈরি করুন

  1. কাস্টম গ্রেডল টেমপ্লেট সক্ষম করুন। প্রজেক্ট সেটিংস > প্লেয়ার > অ্যান্ড্রয়েড > প্রকাশনা সেটিংস > বিল্ড এ যান এবং নির্বাচন করুন: কাস্টম বেস গ্রেডল টেমপ্লেট । এটি Plugins/Android/baseProjectTemplate.gradle ফাইল তৈরি করে।

  2. Gradle টুলস সংস্করণ 8.1.1 বা উচ্চতর ব্যবহার করতে Plugins/Android/baseProjectTemplate.gradle ফাইল পরিবর্তন করুন।

    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
    }
    

ইউনিটি 2021.3.37f1 এবং তার আগের জন্য অতিরিক্ত পরিবর্তন

ইউনিটি 2021.3.37f1 এবং তার আগে গ্রেডল 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. com.unity3d.player মান সহ নামস্থান বৈশিষ্ট্য অন্তর্ভুক্ত করতে Plugins/Android/mainTemplate.gradle পরিবর্তন করুন।

    android {
        namespace 'com.unity3d.player'
    }
    

অ্যান্ড্রয়েড স্টুডিওতে রপ্তানি করুন

  1. ইউনিটি প্রজেক্ট এক্সপোর্ট করতে অ্যান্ড্রয়েড বিল্ড সেটিংস পরিবর্তন করুন।

  2. অ্যান্ড্রয়েড স্টুডিওতে এক্সপোর্ট করতে, অ্যান্ড্রয়েড বিল্ড সেটিংস পরিবর্তন করুন। ফাইল নির্বাচন করুন (বা macOS-এ ইউনিটি এডিটর ) > সেটিংস তৈরি করুন এবং এক্সপোর্ট প্রজেক্ট চেক করুন:

  3. বিল্ড সেটিংস ডায়ালগের নীচে রপ্তানি বোতাম টিপুন। ইউনিটি নির্বাচিত স্থানে একটি অ্যান্ড্রয়েড প্রকল্প তৈরি করে।

  4. অ্যান্ড্রয়েড স্টুডিওতে রপ্তানি করা প্রকল্পটি খুলুন।

JDK 17 ব্যবহার করতে Gradle JDK কনফিগারেশন আপডেট করুন

  1. অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে, ফাইল থেকে গ্রেডল সেটিংস খুলুন (বা ম্যাকওএস-এ অ্যান্ড্রয়েড স্টুডিও ) > সেটিংস > বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট > বিল্ড টুলস > গ্রেডল
  2. Gradle JDK ড্রপ-ডাউন সনাক্ত করুন। JDK 17 ব্যবহার করতে Gradle JDK পরিবর্তন করুন।

    আপনার যদি JDK 17 ইনস্টল না থাকে তবে Gradle JDK ড্রপ-ডাউন মেনু থেকে ডাউনলোড JDK বিকল্পটি নির্বাচন করুন এবং একটি সামঞ্জস্যপূর্ণ সংস্করণ ডাউনলোড করুন। Android স্টুডিও যা বিতরণ করে তার সাথে মেলে আমরা arch64 সমর্থন সহ JetBrains রানটাইম বিক্রেতাকে সুপারিশ করি।

Gradle wrapper ফাইল আপডেট করুন

Gradle 8.0.1 বা উচ্চতর ব্যবহার করতে gradle/wrapper/gradle-wrapper.properties ভিতরে distributionUrl প্যারামিটার পরিবর্তন করুন।

   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

Unity 2021.3.37f1 এবং তার আগের সংস্করণের জন্য অতিরিক্ত Android স্টুডিও পরিবর্তন

ইউনিটি 2021.3.37f1 এবং তার আগের গ্রেডল 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
        }
    }
    

অ্যান্ড্রয়েড প্রজেক্ট চালান

এই ধাপগুলি সম্পন্ন করার পরে ইউনিটি অ্যাপ্লিকেশন প্রস্তুত। অ্যান্ড্রয়েড স্টুডিও থেকে, গ্রেডল সিঙ্ক চালান এবং প্রকল্পটি চালান