يوضّح هذا المستند كيفية نقل البيانات من الإصدار 5 أو 6 من Google Play Billing Library إلى الإصدار 7 من Google Play Billing Library وكيفية الدمج مع إمكانات الاشتراك الاختيارية الجديدة.
للحصول على قائمة كاملة بالتغييرات في الإصدار 7.0.0، يمكنك الرجوع إلى ملاحظات الإصدار.
نظرة عامة
تحسِّن Google Play Billing Library 7 من معالجة عمليات الدفع لميزات الاشتراك الحالية. تضيف هذه التحسينات الاختيارية إمكانية الدفع باستخدام خطط الأقساط، وتتيح عمليات الشراء المعلّقة للاشتراكات المدفوعة مسبقًا.
ترقية Play Billing Library متوافقة مع الإصدارات السابقة
إنّ جميع واجهات برمجة التطبيقات الجديدة في Google Play Billing Library 7 اختيارية، ولا يحتاج المطوّرون إلى تنفيذ أيّ تغييرات في واجهة برمجة التطبيقات للتحديث.
لنقل البيانات، يجب تعديل مراجع واجهة برمجة التطبيقات وإزالة بعض واجهات برمجة التطبيقات من تطبيقك، كما هو موضّح في ملاحظات الإصدار ولاحقًا في دليل نقل البيانات هذا.
الترقية من PBL 5 إلى PBL 7
توضح الأقسام التالية كيفية الترقية من PBL 5 إلى PBL 7.
تحديث Google Play Billing Library
حدِّث إصدار تبعية Play Billing Library في
ملف build.gradle
على تطبيقك.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
بعد ذلك، عليك تعديل مراجع واجهة برمجة التطبيقات كما هو موضّح في الأقسام التالية.
تغيير عمليات شراء اشتراكات المستخدم
تم استخدام الإصدار 5 من Play Billing Library أو إصدار سابق من ProrationMode
لتطبيق التغييرات على عمليات شراء الاشتراكات التي يجريها المستخدم، مثل عمليات الترقية
أو الاشتراك في خطة أقلّ كلفة. تمت إزالة واجهة برمجة التطبيقات هذه واستبدالها بـ
ReplacementMode
.
التعامل مع تغييرات أسعار الاشتراكات
تمّت إزالة واجهة برمجة التطبيقات launchPriceConfirmationFlow
التي كانت متوقّفة نهائيًا في السابق.
للاطّلاع على البدائل، يمكنك الاطّلاع على دليل تغييرات الأسعار.
التعامل مع التغييرات المتعلّقة بالاشتراكات في واجهة برمجة التطبيقات
تمّت إزالة واجهات برمجة التطبيقات setOldSkuPurchaseToken
وsetReplaceProrationMode
وsetReplaceSkusProrationMode
المتوقّفة نهائيًا في السابق.
- يجب تعديل
setOldSkuPurchaseToken
إلىsetOldPurchaseToken
. - يجب تعديل السمة
setReplaceProrationMode
إلىsetSubscriptionReplacementMode
. - يجب تعديل السمة
setReplaceSkusProrationMode
إلىsetSubscriptionReplacementMode
.
معالجة أخطاء Play Billing Library
يشير الرمز NETWORK_ERROR
الجديد إلى حدوث مشاكل في الاتصال بالشبكة
بين جهاز المستخدم ونظام Google Play.
تم أيضًا تعديل رمزَي SERVICE_TIMEOUT
وSERVICE_UNAVAILABLE
.
لمزيد من المعلومات، يُرجى الاطّلاع على التعامل مع رموز الاستجابة في BillingResult.
معالجة المعاملات في انتظار المراجعة
لم تعُد "مكتبة الفوترة في Play" تنشئ مُعرّف الطلب لعمليات الشراء المعلّقة.
بالنسبة إلى عمليات الشراء هذه، تتم تعبئة مُعرّف الطلب بعد نقل عملية الشراء إلى الحالة PURCHASED
. تأكد من أن الدمج يتوقع مُعرّف طلب
فقط بعد اكتمال المعاملة بالكامل. لا يزال بإمكانك استخدام رمز
الشراء لسجلاتك.
لمزيد من المعلومات حول معالجة عمليات الشراء المُعلّقة، يُرجى الاطّلاع على دليل الدمج في Play Billing Library ودليل إدارة مراحل نشاط الشراء.
معالجة واجهات برمجة التطبيقات لنظام الفوترة البديل الذي تمت إزالته
تمت إزالة BillingClient.Builder.enableAlternativeBilling
وAlternativeBillingListener
وAlternativeChoiceDetails
.
يجب أن يستخدم المطوّرون BillingClient.Builder.enableUserChoiceBilling()
مع UserChoiceBillingListener
وUserChoiceDetails
في معاودة الاتصال بالمستمع بدلاً من ذلك.
يهدف هذا التحديث إلى إعادة تسمية واجهات برمجة التطبيقات المتوقّفة نهائيًا بدون أي تغييرات في السلوك.
تغييرات اختيارية
تتضمّن PBL 7 واجهتَي برمجة تطبيقات اختياريتَين جديدتَين.
إتاحة عمليات الشراء المعلّقة لخطط الدفع المُسبَق
اطّلِع على دليل التعامل مع الاشتراكات والمعاملات في انتظار المراجعة.
اشتراكات الأقساط الافتراضية
يمكنك الاطّلاع على دليل دمج اشتراكات الأقساط.
الترقية من PBL 6 إلى PBL 7
توضح الأقسام التالية كيفية الترقية من PBL 6 إلى PBL 7.
تحديث Google Play Billing Library
حدِّث إصدار تبعية Play Billing Library في
ملف build.gradle
على تطبيقك.
dependencies {
def billingVersion = 7.0.0
implementation "com.android.billingclient:billing:$billingVersion"
}
بعد ذلك، عليك تعديل مراجع واجهة برمجة التطبيقات كما هو موضّح في الأقسام التالية.
التعامل مع التغييرات المتعلّقة بالاشتراكات في واجهة برمجة التطبيقات
تمّت إزالة واجهات برمجة التطبيقات setOldSkuPurchaseToken
وsetReplaceProrationMode
وsetReplaceSkusProrationMode
المتوقّفة نهائيًا في السابق.
- يجب تعديل
setOldSkuPurchaseToken
إلىsetOldPurchaseToken
. - يجب تعديل السمة
setReplaceProrationMode
إلىsetSubscriptionReplacementMode
. - يجب تعديل السمة
setReplaceSkusProrationMode
إلىsetSubscriptionReplacementMode
.
معالجة واجهات برمجة التطبيقات لنظام الفوترة البديل الذي تمت إزالته
تمت إزالة BillingClient.Builder.enableAlternativeBilling
وAlternativeBillingListener
وAlternativeChoiceDetails
.
يجب أن يستخدم المطوّرون BillingClient.Builder.enableUserChoiceBilling()
مع UserChoiceBillingListener
وUserChoiceDetails
في معاودة الاتصال بالمستمع بدلاً من ذلك.
تغييرات اختيارية
تتضمّن PBL 7 واجهتَي برمجة تطبيقات اختياريتَين جديدتَين.
إتاحة عمليات الشراء المعلّقة لخطط الدفع المُسبَق
اطّلِع على دليل التعامل مع الاشتراكات والمعاملات في انتظار المراجعة.
اشتراكات الأقساط الافتراضية
يمكنك الاطّلاع على دليل دمج اشتراكات الأقساط للحصول على معلومات حول كيفية دمج هذه التغييرات في تطبيقك.