يوضّح هذا المستند كيفية نقل البيانات من الإصدار 6 أو 7 من "مكتبة الفوترة في Google Play" (PBL) إلى الإصدار 8 من "مكتبة الفوترة في Google Play" وكيفية الدمج مع ميزات الاشتراك الاختيارية الجديدة.
للاطّلاع على قائمة كاملة بالتغييرات في الإصدار 8.0.0، يُرجى الرجوع إلى ملاحظات الإصدار.
نظرة عامة
يتضمّن الإصدار 8 من "سياسة واجهة برمجة التطبيقات" تحسينات على واجهات برمجة التطبيقات الحالية، بالإضافة إلى إزالة واجهات برمجة التطبيقات التي تم تجاهلها في السابق. يتضمّن هذا الإصدار من المكتبة أيضًا مكتبات برمجة تطبيقات جديدة لمنتجات الاستخدام الواحد.
التوافق مع الإصدارات السابقة لترقية ميزة "الإعلانات الصورية"
لنقل البيانات إلى الإصدار 8 من مكتبة PBL، عليك تعديل بعض مراجع واجهة برمجة التطبيقات الحالية أو إزالتها من تطبيقك، كما هو موضّح في ملاحظات الإصدار والفقرات التالية في دليل نقل البيانات هذا.
الترقية من الإصدار PBL 6 أو 7 إلى الإصدار PBL 8
للترقية من الإصدار 6 أو 7 من "الإصدار التجريبي من البريد الوارد" إلى الإصدار 8، اتّبِع الخطوات التالية:
عدِّل إصدار مكتبة الفوترة في Google Play في ملف
build.gradle
الخاص بتطبيقك.dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }
(لا ينطبق ذلك إلا على الترقية من الإصدار PBL 6 إلى الإصدار PBL 8). معالجة التغييرات في واجهة برمجة التطبيقات المتعلّقة بالاشتراك في تطبيقك
يسرد الجدول التالي واجهات برمجة التطبيقات ذات الصلة بالاشتراكات التي تمت إزالتها في PBL 8 وواجهة برمجة التطبيقات البديلة المقابلة التي يجب استخدامها في تطبيقك.
إزالة واجهة برمجة التطبيقات التي تم إيقافها نهائيًا في PBL 8 واجهة برمجة تطبيقات بديلة لاستخدامها setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode عدِّل طريقة تنفيذ
queryProductDetailsAsync
.حدث تغيير في توقيع
ProductDetailsResponseListener.onProductDetailsResponse
، ما يتطلب إجراء تغييرات في تطبيقك لتنفيذqueryProductDetailsAsync
. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة عرض المنتجات المتوفّرة للشراء.معالجة واجهات برمجة التطبيقات التي تمت إزالتها
الترقية من
لم تعُد واجهة برمجة التطبيقات PBL 8 متوافقة مع واجهات برمجة التطبيقات المدرَجة في الجدول التالي. إذا كان التنفيذ يستخدِم أيًا من واجهات برمجة التطبيقات هذه التي تمّت إزالتها، يُرجى الرجوع إلى الجدول لمعرفة واجهات برمجة التطبيقات البديلة المقابلة لها.
إزالة واجهة برمجة التطبيقات التي تم إيقافها نهائيًا في PBL 8 واجهة برمجة تطبيقات بديلة لاستخدامها واجهات برمجة التطبيقات queryPurchaseHistoryAsync راجِع طلب سجلّ الشراء. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (واجهة برمجة التطبيقات بدون مَعلمات) enablePendingPurchases(PendingPurchaseParams params)
يُرجى العِلم أنّ دالة enablePendingPurchases() التي سيتم إيقافها نهائيًا هي مماثلة من الناحية العملية لدالةenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
.queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails الترقية من
يسرد الجدول التالي واجهات برمجة التطبيقات التي تمت إزالتها في حزمة PBL 8، و واجهات برمجة التطبيقات البديلة المقابلة التي يجب استخدامها في تطبيقك.
إزالة واجهة برمجة التطبيقات التي تم إيقافها نهائيًا في PBL 8 واجهة برمجة تطبيقات بديلة لاستخدامها واجهات برمجة التطبيقات queryPurchaseHistoryAsync راجِع مقالة طلب سجلّ الشراء. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (واجهة برمجة التطبيقات بدون مَعلمات) enablePendingPurchases(PendingPurchaseParams params)
يُرجى العِلم أنّ دالة enablePendingPurchases() التي سيتم إيقافها نهائيًا هي مماثلة من الناحية العملية لدالةenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
.queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (إجراء مقترَح) فعِّل إعادة الاتصال بالخدمة تلقائيًا.
يمكن أن تحاول "مكتبة الفوترة في Play" إعادة تأسيس اتصال الخدمة تلقائيًا في حال إجراء طلب بيانات من واجهة برمجة التطبيقات أثناء عدم اتصال الخدمة. لمزيد من المعلومات، يُرجى الاطّلاع على تفعيل إعادة الاتصال بالخدمة تلقائيًا.
التغييرات الاختيارية
أن تتيح عمليات الشراء المعلّقة للخطط المدفوعة مسبقًا. لمزيد من المعلومات، يُرجى الاطّلاع على معالجة الاشتراكات والمعاملات المعلّقة.
الاشتراكات في الأقساط الافتراضية لمزيد من المعلومات، يُرجى الاطّلاع على مقالة دمج الاشتراكات بالتقسيط.