عند بيع منتجات رقمية من خلال تطبيقك، يجب أن تأخذ في الاعتبار تجربة المستخدم بأكملها. يتيح لك التكامل داخل التطبيق بدء مسارات الشراء وإدارة تجربة المستخدم، ولكن من الضروري إبقاء نظامك الخلفي على اطّلاع على الأذونات التي يشتريها المستخدمون. هذا مهم لتتبُّع عمليات الشراء وإدارة الجوانب الأخرى من تجربة المستخدم، مثل الأذونات من عدّة منصات.
لمراقبة أحداث مراحل الشراء والردّ بسرعة على التغييرات في أذونات المستخدم، عليك إنشاء نظام لإدارة حالة الشراء في نظامك الخلفي لكل من الاشتراكات وعمليات الشراء لمرة واحدة. يضمن هذا النظام معالجة عمليات الشراء بسرعة وأمان بغض النظر عن حالة الجهاز، ويحافظ على أذونات المستخدم المتسقة على جميع المنصات، ويوفر إمكانية الاطّلاع على سجلّ الشراء وبيانات الأذونات في نظامك الخلفي.
يوفّر Google Play إشعارات في الوقت الفعلي خاصة بالمطوّرين (RTDN) لمراقبة أحداث مراحل الشراء، ويمكن استخدام واجهات برمجة التطبيقات الخاصة بالمطوّرين في Play للاشتراكات وعمليات الشراء داخل التطبيق لاتخاذ الإجراءات اللازمة استنادًا إلى هذه الأحداث. باستخدام هذه الأدوات وإنشاء نظام قوي لإدارة مراحل الشراء، يمكنك توفير تجربة سلسة للمستخدم وإدارة عمليات الشراء والأذونات بكفاءة.
إنشاء عميل للإشعارات في الوقت الفعلي الخاصة بالمطوّرين
يمكن أن تخضع عمليات الشراء التي يتم إجراؤها على نظام الفوترة في Google Play لعدة تغييرات في الأذونات طوال مراحلها. يمكن أن تؤدي إجراءات مختلفة إلى حدوث هذه التغييرات، بما في ذلك ما يلي:
- الإجراءات التي يبدأها المستخدمون في تطبيقك
- الإجراءات التي يبدأها المستخدمون من خلال تطبيق "متجر Google Play"
- الإجراءات التي يتم إجراؤها مباشرةً من أنظمتك الخلفية
- الإجراءات التي تجريها من خلال Google Play Console
على سبيل المثال:
- إلغاء مستخدم اشتراكًا من خلال مركز اشتراكات "متجر Google Play"
- تأجيل مطوّر فوترة الاشتراك باستخدام Google Play Developer API
- إصدار مطوّر لعملية ردّ أموال وإلغاء إذن شراء من خلال Google Play Console
من الضروري أن يكون نظامك الخلفي على علم بالحالات المختلفة التي يمكن أن تمر بها عملية الشراء وأن يتخذ جميع الإجراءات اللازمة لتعديل الإذن وفقًا لذلك في الوقت المناسب.
على الرغم من إمكانية استخدام Google Play Developer API للتحقّق من حالة الشراء يدويًا، فإنّ الاعتماد على عمليات التحقّق الدورية هو طريقة غير فعّالة لتتبُّع التغييرات وعرضة للأخطاء والتأخيرات. يمكن أن تساعدك الإشعارات في الوقت الفعلي الخاصة بالمطوّرين في الردّ على التغييرات على الفور بدون الحاجة إلى إنشاء منطق لتتبُّع مراحل عمليات الشراء على Google Play.
يناقش هذا القسم كيفية إنشاء عميل للإشعارات في الوقت الفعلي الخاصة بالمطوّرين. الإشعارات في الوقت الفعلي الخاصة بالمطوّرين هي ميزة تم إنشاؤها باستخدام Google Cloud Pub/Sub، والتي ترسل إلى نظامك الخلفي إشعارًا فوريًا عند تغيُّر حالة إذن المستخدم. يتألف نظام Pub/Sub من ناشر يرسل الإشعارات وعميل يشترك في هذه الإشعارات. من خلال تنفيذ الإشعارات في الوقت الفعلي الخاصة بالمطوّرين، يمكنك تتبُّع جميع التغييرات في حالة إذن المستخدم في الوقت الفعلي والردّ عليها على الفور.
ناشر الإشعارات في الوقت الفعلي الخاصة بالمطوّرين
يعمل نظام Google Play الخلفي كناشر للإشعارات في الوقت الفعلي الخاصة بالمطوّرين. لإعداد الإشعارات في الوقت الفعلي الخاصة بالمطوّرين لتطبيقك، اتّبِع التعليمات الواردة في دليل الإعداد. تسمح هذه الخطوات لنظام الفوترة في Google Play بالعمل كناشر للإشعارات في الوقت الفعلي الخاصة بالمطوّرين لتطبيقك. لإكمال هذا الإعداد، عليك التعرّف على Google Cloud Platform Console لإعداد إعدادات Pub/Sub الأساسية.
المشترك في الإشعارات في الوقت الفعلي الخاصة بالمطوّرين
بعد إعداد الناشر، عليك إعداد نظامك الخلفي لاستهلاك الإشعارات في الوقت الفعلي الخاصة بالمطوّرين. لإجراء ذلك، عليك إنشاء عميل لتلقّي رسائل Google Cloud Pub/Sub. تتألف الوظيفة الأساسية لعميل الإشعارات في الوقت الفعلي الخاصة بالمطوّرين من تلقّي مثيلات
PubSubMessage،
إما من خلال طلبات HTTPS في نقطة نهاية مسجّلة أو باستخدام مكتبات
عملاء Cloud Pub/Sub. راجِع مستندات
Pub/Sub للتعرّف على استخدام استراتيجية
الدفع أو
السحب، أو مستندات إعداد الإشعارات في الوقت الفعلي الخاصة بالمطوّرين للحصول على إرشادات حول
اختيار الاستراتيجية الأنسب لاحتياجاتك.
لكل رسالة تتلقّاها، على نظامك الخلفي إجراء ما يلي:
- فكّ حزمة الحقل بترميز base-64
data، والذي يحتوي على عنصر الإشعارات في الوقت الفعلي الخاصة بالمطوّرين. - التحقّق من تفرد الحقل
messageIdوالتأكّد من عدم معالجة الإشعارات المكرّرة يمنع ذلك المعالجة الزائدة ويضمن عدم استنفاد حصة واجهة برمجة التطبيقات. - بدء أي عمليات خلفية مطلوبة مرتبطة بتغيير الإذن الذي تم إعلامك به من خلال حدث الإشعارات في الوقت الفعلي الخاصة بالمطوّرين
التعامل مع حالات الشراء الانتقالية
تختلف مراحل عمليات الشراء لمرة واحدة وعمليات شراء الاشتراكات استنادًا إلى الحالات والأحداث المختلفة التي يمكن أن تؤثر فيها. بفضل الإشعارات في الوقت الفعلي الخاصة بالمطوّرين، لن تحتاج إلى إنشاء منطق لتأكيد الحالات الانتقالية. كل ما عليك فعله هو تحديد ما يحدث عندما يتلقّى نظامك الخلفي كل نوع من أنواع الإشعارات.
راجِع الأدلة التالية للتعرّف أكثر على هذه السيناريوهات: