شراء مراحل نشاط الطلاب (RTDN)

عندما تبيع منتجات رقمية من خلال تطبيقك، يجب أن تضع في اعتبارك تجربة المستخدم بأكملها. يتيح لك التكامل داخل التطبيق بدء تدفقات الشراء وإدارة تجربة المستخدم، ولكن من الضروري الحفاظ على حداثة الخلفية في ما يتعلق بالأذونات التي يشتريها المستخدمون. يُعد هذا أمرًا مهمًا لتتبع عمليات الشراء وإدارة الجوانب الأخرى لتجربة المستخدم، مثل الصلاحيات عبر المنصات.

لمراقبة أحداث مراحل نشاط الشراء والاستجابة بسرعة للتغييرات في أذونات المستخدمين، يجب إنشاء نظام إدارة حالة الشراء في الخلفية لكل من الاشتراكات وعمليات الشراء لمرة واحدة. ويضمن هذا النظام معالجة عمليات الشراء بسرعة وأمان بغض النظر عن حالة الجهاز، كما يحافظ على استحقاقات متسقة للمستخدمين في جميع الأنظمة الأساسية، كما يوفر إمكانية الاطّلاع على سجلّ الشراء وبيانات الاستحقاق في الخلفية.

ويوفّر Google Play إشعارات في الوقت الفعلي الخاصة بالمطوّرين (RTDN) لرصد أحداث مراحل نشاط الشراء، كما يمكن استخدام واجهات برمجة تطبيقات Play Developer API للاشتراكات وعمليات الشراء داخل التطبيق لاتخاذ الإجراءات اللازمة بناءً على هذه الأحداث. باستخدام هذه الأدوات وإنشاء نظام قوي لإدارة مراحل نشاط الشراء، يمكنك توفير تجربة سلسة للمستخدم وإدارة عمليات الشراء والمستحقات بكفاءة.

إنشاء عميل لإرسال إشعارات المطوِّرين في الوقت الفعلي

يمكن أن تخضع عمليات الشراء التي يتم إجراؤها من خلال نظام الفوترة في Google Play لعدة تغييرات على أذونات الوصول خلال مراحل نشاطها. يمكن أن تؤدي إجراءات مختلفة إلى تشغيل هذه التغييرات، بما في ذلك ما يلي:

  • الإجراءات التي يبدأها المستخدمون في تطبيقك
  • الإجراءات التي يبدأها المستخدمون من خلال تطبيق "متجر Play"
  • الإجراءات التي يتم بدؤها مباشرةً من الأنظمة الخلفية
  • الإجراءات التي تبدأها من خلال Google Play Console.

مثلاً:

  • مستخدم يلغي اشتراكًا من خلال مركز الاشتراكات في "متجر Play"
  • مطوّر برامج تأجيل فوترة الاشتراك باستخدام واجهة برمجة التطبيقات Google Play Developer API
  • يشير ذلك المصطلح إلى مطوّر إصدار ردّ أموال عملية شراء وإبطال الحصول على إذنها من خلال Google Play Console.

من الضروري أن تكون الخلفية على علم بالحالات المختلفة التي يمكن أن تمر بها عملية الشراء وأن تتخذ جميع الإجراءات اللازمة لتعديل أذونات الوصول في الوقت المناسب.

على الرغم من إمكانية استخدام Google Play Developer API للتحقّق من حالة الشراء يدويًا، فإنّ الاعتماد على عمليات الفحص الدورية لا يُعدّ طريقة فعّالة للغاية لتتبُّع التغييرات، كما أنّه عُرضة للأخطاء وحالات التأخير. يمكن أن تساعدك أرقام RTDN في الاستجابة للتغييرات فورًا بدون الحاجة إلى إنشاء منطق تتبُّع دورة حياة عمليات الشراء في Google Play.

يناقش هذا القسم كيفية إنشاء عميل لـ RTDN. إنّ بروتوكول RTDN عبارة عن ميزة تم إنشاؤها باستخدام Google Cloud Pub/Sub، والتي ترسل إلى الخلفية إشعارًا فوريًا عندما تتغير حالة استحقاق المستخدم. يتكوّن نظام النشر/الاشتراك من ناشر يرسل الإشعارات وعميلاً يشترك في تلك الإشعارات. من خلال استخدام بروتوكول RTDN، يمكنك تتبُّع جميع التغييرات التي تطرأ على حالة استحقاق المستخدم في الوقت الفعلي والردّ عليها على الفور.

ناشر RTDN

تعمل خلفية Google Play كناشر لأرقام RTDN. لإعداد RTDN في تطبيقك، اتّبِع التعليمات الواردة في دليل الإعداد. تسمح هذه الخطوات لنظام الفوترة في Google Play بالعمل كناشر لأرقام RTDN في تطبيقك. لإكمال هذا الإعداد، عليك التعرّف على وحدة تحكّم Google Cloud Platform لإعداد إعدادات النشر/الاشتراك الأساسية.

مشترك في بروتوكول RTDN

بعد إعداد الناشر، يجب إعداد الواجهة الخلفية لاستهلاك نطاقات RTDN. لإجراء ذلك، تحتاج إلى إنشاء برنامج لتلقّي رسائل Google Cloud Pub/Sub. تتكوّن الوظيفة الأساسية لعميل RTDN من تلقّي مثيلات من PubSubMessage، إما من خلال طلبات HTTPS في نقطة نهاية مسجَّلة أو باستخدام مكتبات عميل Cloud Pub/Sub. يمكنك الاطّلاع على مستندات النشر/الاشتراك لمعرفة المزيد عن استخدام استراتيجية الدفع أو السحب، أو مستندات إعداد بروتوكول RTDN للحصول على إرشادات حول كيفية اختيار الاستراتيجية المناسبة لاحتياجاتك.

لكل رسالة تتلقاها، يجب أن تقوم الخلفية بما يلي:

  • احرص على فك ضغط حقل data بترميز base 64، والذي يحتوي على كائن RTDN.
  • شغِّل أي عمليات لازمة في الخلفية ذات صلة بتغيير الصلاحيات الذي تم إبلاغه بحدث RTDN.

التعامل مع عمليات نقل حالة الشراء

تختلف دورة حياة عمليات الشراء لمرة واحدة وعمليات شراء الاشتراكات استنادًا إلى الحالات والأحداث المختلفة التي قد تؤثر فيها. بفضل RTDN، لن تحتاج إلى إنشاء منطق لتأكيد عمليات انتقال الحالة. كل ما عليك فعله هو تحديد ما يحدث عندما تتلقى الخلفية كل نوع من أنواع الإشعارات.

اطّلع على الأدلة التالية لمزيد من المعلومات عن هذه السيناريوهات: