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

يقدم هذا المستند نظرة عامة عالية المستوى على الجلسات في Google Mobile App Analytics وحزمة SDK من Google Analytics لنظام التشغيل iOS، ويصف الطرق المختلفة المتاحة لإدارة الجلسات في تطبيقك.

نظرة عامة

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

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

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

إدارة الجلسات

سيوضح القسم التالي الطرق المتاحة لك لإدارة الجلسات في تطبيقك.

إدارة الجلسات تلقائيًا

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

  • تبلغ مدة مهلة الجلسة في عملية التنفيذ التلقائية 30 ثانية. يمكنك تغيير مدّة المهلة من خلال طلب الرقم setSessionTimeout:(NSTimeInterval):
      [tracker setSessionTimeout:60];
  • وإذا ظلّ التطبيق في الخلفية لفترة أطول من فترة مهلة الجلسة، ستكون النتيجة التالية جزءًا من جلسة جديدة.

إدارة الجلسات اليدوية

قد يكون من المفيد بدء جلسات جديدة يدويًا في الأحداث الرئيسية خلال مراحل نشاط تطبيقك

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

لبدء جلسة جديدة، اضبط sessionStart على YES وسيؤدّي ذلك إلى إضافة معلَمة إلى النتيجة المرسَلة التالية تشير إلى أنّه يجب أن تبدأ جلسة جديدة.

نفترض في المثال أدناه أنّه يتم استدعاء onSignIn في أي وقت يسجّل فيه أحد المستخدمين الدخول بنجاح إلى تطبيقك:

// Called after a user successfully signs in to your app.
- (void)onSignIn {
  ... // The rest of your onSignIn code.
  tracker.sessionStart = YES;
  [tracker sendEventWithCategory:@"app_flow"
                      withAction:@"sign_in"
                       withLabel:nil
                       withValue:nil]; // First activity of new session.

}