الإرسال - حزمة تطوير البرامج (SDK) لنظام التشغيل iOS

يوضّح هذا المستند كيف يمكنك إدارة إرسال البيانات إلى "إحصاءات Google" باستخدام حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google" لنظام التشغيل iOS، الإصدار 2.

نظرة عامة

في حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google" لنظام التشغيل iOS، يتم تخزين البيانات المجمّعة مثل مشاهدات الشاشة أو الأحداث محليًا في قائمة انتظار قبل إرسالها إلى خوادم "إحصاءات Google". تُعرف العملية التي يتم من خلالها إرسال هذه البيانات (المشار إليها هنا باسم "النتائج") من حزمة تطوير البرامج (SDK) إلى "إحصاءات Google" باسم الإرسال.

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

هناك نوعان من الإرسال:

  • إرسال دوري : يرسل النتائج تلقائيًا على فاصل زمني متكرر تحدده.
  • إرسال يدوي : إرسال النتائج يدويًا لإرسال البيانات عندما يكون ذلك مناسبًا لك، على سبيل المثال عند توفّر اتصال HTTP حالي.

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

الإرسال الدوري

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

وتُعدّ فترة الإرسال التلقائية دقيقتين. يمكنك توفير الفاصل الزمني الخاص بك بالثواني من خلال استدعاء setDispatchPeriod:(NSTimeInterval) كما في هذا المثال:

[[GAI sharedInstance] setDispatchPeriod:60];

ويؤدي ضبط قيمة سالبة إلى إيقاف الإرسال الدوري، ما يتطلب منك استخدام الإرسال اليدوي إذا كنت تريد إرسال أي بيانات إلى "إحصاءات Google". من ناحية أخرى، سيؤدي ضبط قيمة 0 إلى إرسال كل نتيجة على الفور في حال توفّر اتصال بالشبكة.

بعد إرسال جميع النتائج، سيدخل الإرسال الدوري في وضع توفير الطاقة وسيتم إيقافه إلى أن يتم إجراء اتصال إرسال آخر.

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

الإرسال اليدوي

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

يمكن إرسال النتائج يدويًا عن طريق استدعاء dispatch كما هو موضّح أدناه:

[[GAI sharedTracker] dispatch];