نقل البيانات إلى الإصدار 7 من Google Play Billing Library من الإصدار 5 أو 6

يوضّح هذا المستند كيفية نقل البيانات من الإصدار 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 المتوقّفة نهائيًا في السابق.

معالجة أخطاء 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 المتوقّفة نهائيًا في السابق.

معالجة واجهات برمجة التطبيقات لنظام الفوترة البديل الذي تمت إزالته

تمت إزالة BillingClient.Builder.enableAlternativeBilling وAlternativeBillingListener وAlternativeChoiceDetails. يجب أن يستخدم المطوّرون BillingClient.Builder.enableUserChoiceBilling() مع UserChoiceBillingListener وUserChoiceDetails في معاودة الاتصال بالمستمع بدلاً من ذلك.

تغييرات اختيارية

تتضمّن PBL 7 واجهتَي برمجة تطبيقات اختياريتَين جديدتَين.

إتاحة عمليات الشراء المعلّقة لخطط الدفع المُسبَق

اطّلِع على دليل التعامل مع الاشتراكات والمعاملات في انتظار المراجعة.

اشتراكات الأقساط الافتراضية

يمكنك الاطّلاع على دليل دمج اشتراكات الأقساط للحصول على معلومات حول كيفية دمج هذه التغييرات في تطبيقك.