আপনি হয়তো সম্প্রতি Google Play Store থেকে একটি ইমেইল পেয়েছেন যাতে লেখা আছে:
আপনার Play Core Maven ডিপেন্ডেন্সি আপডেট করুন একটি Android 14 কম্প্যাটিবল ভার্সনে! আপনার বর্তমান Play Core লাইব্রেরি targetSdkVersion 34 (Android 14)-এর সাথে কম্প্যাটিবল নয়, যা ব্রডকাস্ট রিসিভারে একটি ব্যাকওয়ার্ডস-ইনকম্প্যাটিবল পরিবর্তন আনেছে ব্যবহারকারীর নিরাপত্তা উন্নত করার জন্য। এক কথা স্মরণ করানোর জন্য, August 31 থেকে, Google Play সব নতুন অ্যাপ রিলিজের জন্য Android 14 টার্গেট করা আবশ্যক। লেটেস্ট Play Core লাইব্রেরি ভার্সন ডিপেন্ডেন্সিতে আপডেট করুন অ্যাপ ক্র্যাশ এড়াতে: https://developer.android.com/guide/playcore#playcore-migration
আপনি এই SDK ভার্সন সহ ভবিষ্যতে আপনার অ্যাপের নতুন ভার্সন প্রোডাকশন বা ওপেন টেস্টিং-এ রিলিজ করতে পারবেন না।
ভয়ঙ্কর লাগছে, أليس কি?
এত চিন্তা করবেন না। এটা আসলে দেখার চেয়ে সহজ।
এই পরিবর্তনটি আসলে কী সম্পর্কে
মূলত, Google ২০২২ সালেরต้นে Play Core লাইব্রেরির নতুন ভার্সন রিলিজ করা বন্ধ করল।
Play Core লাইব্রেরির সর্বশেষ রিলিজকৃত ভার্সন
এবং April 2022 থেকে, তারা মূল Play Core লাইব্রেরিকে চারটি আলাদা লাইব্রেরিতে ভাগ করেছে:
- Play Assets Delivery Library
- Play Feature Delivery Library
- Play In-App Reviews Library
- Play In-App Updates Library
প্রতিটি লাইব্রেরির নিজস্ব কার্যকারিতা এবং দায়িত্ব রয়েছে।
যেহেতু পুরনো core play লাইব্রেরি শুধু নির্দিষ্ট API লেভেল পর্যন্ত সাপোর্ট করে, আপনাকে আপনার অ্যাপ্লিকেশনকে নতুন লাইব্রেরিগুলো ব্যবহার করার জন্য মাইগ্রেট করতে হবে যারা সাম্প্রতিক API লেভেলগুলোর সাপোর্ট দেয়।
সংক্ষেপে, আপনাকে বের করতে হবে আপনি মূল core play লাইব্রেরির কোন কার্যকারিতা ব্যবহার করছেন এবং তারপর সঠিক অংশটি ডাউনলোড করতে হবে। উদাহরণস্বরূপ, আপনার যদি লজিক থাকে ব্যবহারকারীদের জানাতে যখন আপনার অ্যাপ্লিকেশনের একটি নতুন ভার্সন উপলব্ধ, তবে আপনাকে Play In-App-Updates লাইব্রেরি নিতে হবে।
আমরা এখানে দুটি ইউজ কেস প্রেজেন্ট করব:
- নেটিভ Android অ্যাপ্লিকেশন
- Flutter অ্যাপ্লিকেশন
ইউজ কেস – নেটিভ Android অ্যাপ
আপনার যদি একটি নেটিভ Android অ্যাপ্লিকেশন থাকে, কি সেটি Kotlin বা Java-এ লেখা হোক, আপনাকে নিচের কাজগুলো করতে হবে:
- আপনার অ্যাপ্লিকেশন লেভেল build.gradle ফাইল খুলুন
- সম্ভবত আপনি dependencies ব্লকের নিচে এই লাইনটি দেখবেন:
implementation 'com.google.android.play:core-ktx:1.8.1'
আপনাকে এটি রিমুভ করতে হবে এবং পুরনো core লাইব্রেরিতে আপনি যা ব্যবহার করতেন তার অনুযায়ী প্রতিস্থাপন করতে হবে
আপনার যদি Play In-App-Updates লাইব্রেরি দরকার হয়, তবে dependencies ব্লকে এগুলো যোগ করতে হবে:
implementation 'com.google.android.play:app-update:2.1.0' // যদি আপনার অ্যাপ্লিকেশনে Kotlin ব্যবহার করেন তবে নিচের ডিপেন্ডেন্সি যোগ করুন implementation 'com.google.android.play:app-update-ktx:2.1.0'
- আপনার অ্যাপ্লিকেশন রিবিল্ড করুন এবং দেখুন সবকিছু ঠিকঠাক কাজ করছে কিনা।
✋ আপনাকে হয়তো import statements পরিবর্তন করতে হয় import com.google.android.play.core.tasks.*; থেকে import com.google.android.gms.tasks.*;।
ইউজ কেস – Flutter অ্যাপ্লিকেশন
যেহেতু Flutter একটি ফ্রেমওয়ার্ক যা Android এবং iOS উভয়ই ক্যাটার করে, এই সিনেরিওটি উপরেরটি থেকে কিছুটা ভিন্ন। আপনার Flutter অ্যাপ্লিকেশনে core play লাইব্রেরি আপগ্রেড করার সতর্কতা পেলে, আপনাকে আপনার pubspec.yaml ফাইলে ব্যবহৃত লাইব্রেরিগুলো দেখতে হবে:
dependencies: flutter: sdk: flutter ... in_app_update: ^3.0.0
উপরে দেখতে পাচ্ছেন, অ্যাপ্লিকেশন in_app_update লাইব্রেরিতে ডিপেন্ডент, যা অ্যাপ্লিকেশনের নতুন ভার্সন উপলব্ধ হলে ব্যবহারকারীদের জানাতে করে। আমরা যখন in_app_update-এর pub.dev চেঞ্জলগ পেজে যাব, তখন দেখব:
version 4.1.0-এ প্রয়োজনীয় সাপোর্ট যোগ হয়েছে
তাহলে আমাদের pubspec.yaml ফাইল আপডেট করতে হবে সেই ভার্সন ব্যবহার করার জন্য (কমপক্ষে)।
dependencies: flutter: sdk: flutter ... in_app_update: ^4.1.0
Pub get চালান এবং আপনি जाने স্ফটিক।
Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started