ভার্সন ৫ বা ৬ থেকে Google Play Billing Library 7-এ মাইগ্রেট করা

Google Play Billing Library 5 বা 6 থেকে Google Play Billing Library 7-এ কীভাবে মাইগ্রেট করবেন এবং নতুন ঐচ্ছিক সাবস্ক্রিপশন ক্ষমতার সাথে কীভাবে ইন্টিগ্রেট করবেন তা এই ডকুমেন্টে বর্ণনা করা হয়েছে।

7.0.0 ভার্সনে হওয়া পরিবর্তনের সম্পূর্ণ তালিকা দেখতে, রিলিজ নোট দেখুন।

এক নজরে

Google Play Billing Library 7 আগে থেকে থাকা সাবস্ক্রিপশন ফিচারের জন্য পেমেন্ট ম্যানেজমেন্ট উন্নত করে। এই ঐচ্ছিক উন্নতিগুলি ইনস্টলমেন্ট প্ল্যানের মাধ্যমে পেমেন্ট করার পাশাপাশি প্রিপেড সাবস্ক্রিপশনের জন্য বাকি থাকা কেনাকাটার ক্ষেত্রেও সহায়তা প্রদান করে।

ব্যাকওয়ার্ড কম্প্যাটিবল Play Billing Library আপগ্রেড

সব নতুন Google Play Billing Library 7 API ঐচ্ছিক এবং আপডেট করার জন্য ডেভেলপারদের কোনও API পরিবর্তন করতে হবে না।

মাইগ্রেট করতে, আপনাকে API রেফারেন্স আপডেট করতে হবে এবং আপনার অ্যাপ থেকে নির্দিষ্ট কিছু API সরাতে হবে, যেমনটি রিলিজ নোট এবং পরে এই মাইগ্রেশন গাইডে বর্ণনা করা হয়েছে।

PBL 5 থেকে PBL 7-এ আপগ্রেড করুন

PBL 5 থেকে PBL 7-এ কীভাবে আপগ্রেড করবেন তা নিম্নলিখিত বিভাগে বর্ণনা করা হয়েছে।

Google Play Billing Library আপডেট করুন

আপনার অ্যাপের build.gradle ফাইলে Play Billing Library ডিপেন্ডেন্সি ভার্সন আপডেট করুন।

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

এরপর, নিম্নলিখিত বিভাগে যেভাবে বর্ণনা করা হয়েছে সেইভাবে আপনার API রেফারেন্স আপডেট করুন।

ব্যবহারকারীর সাবস্ক্রিপশন কেনাকাটা পরিবর্তন করা

Play Billing Library 5 এবং তার আগের ভার্সনে ব্যবহারকারীর সাবস্ক্রিপশন কেনাকাটায় পরিবর্তন প্রয়োগ করতে ProrationMode ব্যবহার করা হত, যেমন আপগ্রেড বা ডাউনগ্রেড করা। এই API সরিয়ে দেওয়া হয়েছে এবং এর পরিবর্তে ReplacementMode ব্যবহার করা হচ্ছে।

সাবস্ক্রিপশনের দামের পরিবর্তন ম্যানেজ করা

আগে থেকে অননুমোদিত launchPriceConfirmationFlow API সরিয়ে দেওয়া হয়েছে। বিকল্পের জন্য, দাম পরিবর্তন সংক্রান্ত গাইড দেখুন।

সাবস্ক্রিপশন সম্পর্কিত API পরিবর্তন ম্যানেজ করা

আগে বন্ধ করে দেওয়া API setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode সরিয়ে দেওয়া হয়েছে।

Play Billing লাইব্রেরির সমস্যা ম্যানেজ করা

নতুন NETWORK_ERROR কোড ব্যবহারকারীর ডিভাইস ও Google Play সিস্টেমের মধ্যে নেটওয়ার্ক কানেকশনের সমস্যাকে নির্দেশ করে।

SERVICE_TIMEOUT এবং SERVICE_UNAVAILABLE কোডও আপডেট করা হয়েছে।

আরও তথ্যের জন্য, BillingResult রেসপন্স কোড ম্যানেজ করা দেখুন।

পেন্ডিং ট্রানজ্যাকশন ম্যানেজ করা

Play Billing Library আর বাকি থাকা কেনাকাটার জন্য অর্ডার আইডি তৈরি করে না। এইসব কেনাকাটার ক্ষেত্রে, কেনাকাটা PURCHASED স্ট্যাটাসে পরিবর্তিত হওয়ার পরে অর্ডার আইডি দেখানো হয়। আপনার ইন্টিগ্রেশন যাতে ট্রানজ্যাকশন সম্পূর্ণ হওয়ার পরেই অর্ডার আইডি আশা করে তা নিশ্চিত করুন। আপনি এখনও আপনার রেকর্ডের জন্য কেনাকাটার টোকেন ব্যবহার করতে পারবেন।

বাকি থাকা কেনাকাটা ম্যানেজ করা সম্পর্কে আরও জানতে, Play Billing Library ইন্টিগ্রেশন গাইড এবং কেনাকাটার লাইফসাইকেল ম্যানেজমেন্ট গাইড দেখুন।

সরিয়ে দেওয়া বিকল্প বিলিং API ম্যানেজ করা

BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener, এবং AlternativeChoiceDetails সরানো হয়েছে। পরিবর্তে ডেভেলপারদের লিসেনার কলব্যাকে UserChoiceBillingListener এবং UserChoiceDetails-এর সাথে BillingClient.Builder.enableUserChoiceBilling() ব্যবহার করা উচিত।

এই আপডেটটি হল বন্ধ হয়ে যাওয়া API-এর নাম পরিবর্তন করা, যার ফলে আচরণে কোনও পরিবর্তন হয় না।

ঐচ্ছিক পরিবর্তন

PBL 7-এ দুটি নতুন ঐচ্ছিক API অন্তর্ভুক্ত আছে।

প্রিপেড প্ল্যানের জন্য বাকি থাকা কেনাকাটার সুবিধা

সাবস্ক্রিপশন ও বাকি থাকা ট্রানজ্যাকশন ম্যানেজ করা সংক্রান্ত নির্দেশিকা দেখুন।

ভার্চুয়াল ইনস্টলমেন্ট সাবস্ক্রিপশন

ইনস্টলমেন্ট সাবস্ক্রিপশন ইন্টিগ্রেশন নির্দেশিকা দেখুন।

PBL 6 থেকে PBL 7-এ আপগ্রেড করুন

PBL 6 থেকে PBL 7-এ কীভাবে আপগ্রেড করবেন তা নিম্নলিখিত বিভাগে বর্ণনা করা হয়েছে।

Google Play Billing Library আপডেট করুন

আপনার অ্যাপের build.gradle ফাইলে Play Billing Library ডিপেন্ডেন্সি ভার্সন আপডেট করুন।

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

এরপর, নিম্নলিখিত বিভাগে যেভাবে বর্ণনা করা হয়েছে সেইভাবে আপনার API রেফারেন্স আপডেট করুন।

সাবস্ক্রিপশন সম্পর্কিত API পরিবর্তন ম্যানেজ করা

আগে বন্ধ করে দেওয়া API setOldSkuPurchaseToken, setReplaceProrationMode, setReplaceSkusProrationMode সরিয়ে দেওয়া হয়েছে।

সরিয়ে দেওয়া বিকল্প বিলিং API ম্যানেজ করা

BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener এবং AlternativeChoiceDetails সরানো হয়েছে। পরিবর্তে ডেভেলপারদের লিসেনার কলব্যাকে UserChoiceBillingListener এবং UserChoiceDetails-এর সাথে BillingClient.Builder.enableUserChoiceBilling() ব্যবহার করা উচিত।

ঐচ্ছিক পরিবর্তন

PBL 7-এ দুটি নতুন ঐচ্ছিক API অন্তর্ভুক্ত আছে।

প্রিপেড প্ল্যানের জন্য বাকি থাকা কেনাকাটার সুবিধা

সাবস্ক্রিপশন ও বাকি থাকা ট্রানজ্যাকশন ম্যানেজ করা সংক্রান্ত নির্দেশিকা দেখুন।

ভার্চুয়াল ইনস্টলমেন্ট সাবস্ক্রিপশন

আপনার অ্যাপে এইসব পরিবর্তন কীভাবে ইন্টিগ্রেট করবেন সেই সম্পর্কে তথ্য পেতে ইনস্টলমেন্ট সাবস্ক্রিপশন ইন্টিগ্রেশন নির্দেশিকা দেখুন।