يوضّح هذا المستند كيفية نقل البيانات من الإصدار 5 أو 6 من Google Play Billing Library إلى الإصدار 7 من Google Play Billing Library وكيفية الدمج مع إمكانات الاشتراك الاختيارية الجديدة.
للاطّلاع على قائمة كاملة بالتغييرات في الإصدار 7.0.0، يُرجى الرجوع إلى ملاحظات الإصدار.
نظرة عامة
تعمل مكتبة "الفوترة في Google Play" 7 على تحسين معالجة الدفعات ل ميزات الاشتراك الحالية. توفّر هذه التحسينات الاختيارية إمكانية الدفع من خلال خطط التقسيط، بالإضافة إلى إمكانية الدفع مقابل عمليات الشراء المعلّقة للاشتراكات المدفوعة مسبقًا.
ترقية "مكتبة الفوترة في Play" المتوافقة مع الإصدارات القديمة
جميع واجهات برمجة التطبيقات الجديدة في الإصدار 7 من Google Play Billing Library اختيارية، ولا يحتاج المطوّرون إلى تنفيذ أي تغييرات على واجهات برمجة التطبيقات لإجراء التحديث.
لنقل البيانات، عليك تعديل مراجع واجهات برمجة التطبيقات وإزالة واجهات برمجة تطبيقات معيّنة من تطبيقك كما هو موضّح في ملاحظات الإصدار وفي مزيد من التفاصيل في دليل نقل البيانات هذا.
الترقية من PBL 5 إلى PBL 7
توضّح الأقسام التالية كيفية الترقية من الإصدار 5 من "الدليل الإرشادي لتخطيط المحتوى" إلى الإصدار 7.
تحديث Google Play Billing Library
عدِّل إصدار مكتبة الفوترة في Play الذي يعتمد عليه تطبيقك فيملف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" ودليل إدارة دورة حياة عمليات الشراء.
معالجة واجهات برمجة التطبيقات لنظام الفوترة البديل التي تمّت إزالتها
تمت إزالة BillingClient.Builder.enableAlternativeBilling
،
AlternativeBillingListener
،
وAlternativeChoiceDetails
.
على المطوّرين استخدام BillingClient.Builder.enableUserChoiceBilling()
مع UserChoiceBillingListener
وUserChoiceDetails
في دالة الاستدعاء الخاصة بالمستمع بدلاً من ذلك.
هذا التعديل هو مجرد إعادة تسمية لواجهات برمجة التطبيقات المتوقّفة نهائيًا بدون أي تغييرات في السلوك.
التغييرات الاختيارية
يتضمّن الإصدار 7 من "الإعلانات الصورية على شبكة البحث" واجهاتَ برمجة تطبيقات اختياريتين جديدتَين.
إتاحة عمليات الشراء المعلّقة للخطط المدفوعة مسبقًا
راجِع دليل معالجة الاشتراكات والمعاملات المعلّقة.
الاشتراكات في الأقساط الافتراضية
اطّلِع على دليل دمج الاشتراكات بالتقسيط.
الترقية من PBL 6 إلى PBL 7
توضّح الأقسام التالية كيفية الترقية من الإصدار 6 من "البرنامج التأسيسي للتسويق" إلى الإصدار 7.
تحديث Google Play Billing Library
عدِّل إصدار مكتبة الفوترة في Play الذي يعتمد عليه تطبيقك فيملف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
في دالة الاستدعاء الخاصة بالمستمع بدلاً من ذلك.
التغييرات الاختيارية
يتضمّن الإصدار 7 من "الإعلانات الصورية على شبكة البحث" واجهاتَ برمجة تطبيقات اختياريتين جديدتَين.
إتاحة عمليات الشراء المعلّقة للخطط المدفوعة مسبقًا
اطّلِع على دليل معالجة الاشتراكات والمعاملات المعلّقة.
الاشتراكات في الأقساط الافتراضية
اطّلِع على دليل دمج الاشتراكات المدفوعة بالتقسيط للحصول على معلومات عن كيفية دمج هذه التغييرات في تطبيقك.