Android Consumer SDK v2.0.0 এর জন্য মাইগ্রেশন

Gradle এবং Android Gradle প্লাগইন আপডেট

Gradle এবং Android Gradle প্লাগইন সংস্করণ আপগ্রেড করুন

প্রথমে, আপনার গ্রেডল এবং অ্যান্ড্রয়েড গ্রেডল প্লাগইন সংস্করণ আপগ্রেড করুন। এই আপগ্রেডে নির্দিষ্ট SDK নির্ভরতার সাথে আরও ভাল সামঞ্জস্য রয়েছে (কোটলিন 1.9 সহ), পাশাপাশি কিছু জটিল বাগ সংশোধন করা হয়েছে।

এই SDK প্রধান রিলিজের জন্য আপনার Android অ্যাপ্লিকেশন প্রকল্পের জন্য নিম্নলিখিত সংস্করণ নির্ভরতা প্রয়োজন:

  • একটি Gradle সংস্করণ কমপক্ষে v7.5.0 কিন্তু v7.6.0 এর চেয়ে বেশি নয়।
  • একটি Android Gradle Plugin (AGP) সংস্করণ v7.4.x পরিসরে।

আপনি প্লাগইনগুলির একটি উচ্চ সংস্করণ লক্ষ্য করতে পারেন; যাইহোক, আপনি অবচয় সতর্কতার মধ্যে চালাতে পারেন, অথবা কিছু নতুন বৈশিষ্ট্য কাজ নাও করতে পারে।

Gradle সংস্করণটি পরিবর্তন করতে, আপনার প্রকল্পের /gradle/wrapper/gradle-wrapper.properties ফাইলে লাইনটি পরিবর্তন করুন

distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip

অ্যান্ড্রয়েড গ্রেডল প্লাগইন সংস্করণ পরিবর্তন করতে, build.gradle ফাইলটি পরিবর্তন করুন যাতে buildscript ব্লক রয়েছে। উদাহরণ স্বরূপ:

buildscript {
    repositories {
        google()
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

জাভা 7 থেকে জাভা 8 লাইব্রেরি সমর্থন মাইগ্রেশন

ধাপ 1 - Java 8 লাইব্রেরি সমর্থন সক্ষম করুন

উৎস

যেহেতু SDK min API লেভেল 23 এবং প্রয়োজনীয় AGP ভার্সন 7.4+, কনফিগারেশন উল্লিখিত সোর্স ডকুমেন্টেশন থেকে কিছুটা আলাদা।

buildscript {

    repositories {
        google()
        mavenCentral()
        jcenter()
        maven {
            url = uri("https://storage.googleapis.com/r8-releases/raw")
        }
    }
    dependencies {
        classpath 'com.android.tools:r8:8.0.46'
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

android {
    compileOptions {
        // Flag to enable support for the new language APIs
        coreLibraryDesugaringEnabled true
        // Sets Java compatibility to Java 8
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.3'
}

ধাপ 2 - প্রোগার্ড বা ডেক্সগার্ড থেকে R8 এ মাইগ্রেট করুন

R8, উৎস

AGP v7.4+ বাইনারির জন্য ডিফল্ট সঙ্কুচিত, অস্পষ্টতা এবং অপ্টিমাইজেশান টুল হিসাবে R8 ব্যবহার করে, তাই এই সময়ে কোন বিশেষ পদক্ষেপের প্রয়োজন নেই।

যদি প্রকল্পটি AGP 4.0+ থেকে স্থানান্তরিত হয়, AGP ফাইল অপসারণ সম্পর্কে নিম্নলিখিত সতর্কতা জারি করতে পারে:

  • build.gradle ফাইলে useProguard true ব্যবহার
  • android.enableR8=false gradle.properties ফাইলে মিথ্যা ব্যবহার

এই লাইনগুলি সরানো সাধারণত সেই সমস্যাগুলি সমাধান করে।

কোটলিন 1.6 থেকে 1.9 মাইগ্রেশন

ধাপ 1 - Kotlin Gradle Plugin 1.9.0-এ মাইগ্রেট করুন

উৎস

আপনার অ্যাপ্লিকেশন টপ লেভেল মডিউল build.gradle ফাইলে Kotlin Gradle Plugin সংস্করণ আপডেট করুন। বিল্ডস্ক্রিপ্ট ব্লক থেকে org.jetbrains.kotlin:kotlin-gradle-plugin যোগ করা নিশ্চিত করুন যদি এটি অনুপস্থিত থাকে।

buildscript {
  dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
  }
}

আপনি যদি Kotlin Gradle Plugin 1.6.X বা 1.7.X থেকে আসছেন তাহলে আপনাকে অবশ্যই Kotlin-synthetics থেকে আপনার আবেদন স্থানান্তর করতে হবে। আরও তথ্যের জন্য অফিসিয়াল মাইগ্রেশন গাইড পড়ুন।

ধাপ 2 - kotlin-stdlib 1.9.0 এ আপগ্রেড করুন

উৎস

আপনার অ্যাপ্লিকেশন build.gradle ফাইলে kotlin-stblib 1.9.0 এ আপগ্রেড করুন।

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}

kotlin-stdlib-jdk7 বা kotlin-stdlib-jdk8 এর যেকোনো রেফারেন্স মুছে ফেলার বিষয়টি নিশ্চিত করুন। উভয় নির্ভরতা কোটলিন 1.8.0 থেকে শুরু করে kotlin-stdlib এ একীভূত করা হয়েছে।