البحث عن تحليلات أفضل للهاتف المحمول
نشرت: 2022-03-10عند إنشاء تطبيق جوال ، يتخيل المطور نموذجًا والطريقة التي سيستخدم بها المستخدمون التطبيق. إحدى المشكلات التي يواجهها المطورون هي أن المستخدمين لا يستخدمون دائمًا تطبيقًا بالطريقة التي تصورها المطور.
كيف يتفاعل المستخدمون مع التطبيق؟ ماذا يفعلون في التطبيق؟ هل يفعلون ما يريد المطور منهم أن يفعلوه؟ تساعد تحليلات الهاتف المحمول في الإجابة على هذه الأسئلة. تسمح التحليلات للمطور بفهم ما يحدث مع التطبيق في الحياة الواقعية وتوفر فرصة لتعديل التطبيق وتحسينه بعد معرفة كيفية استخدام المستخدمين له بالفعل. ببساطة ، التحليلات هي دراسة سلوك المستخدم.
مزيد من القراءة على SmashingMag:
- الأجهزة ذات الأولوية: الاختبار وتصميم الويب سريع الاستجابة
- انتقال نوح إلى اختبار قابلية الاستخدام على الأجهزة المحمولة
- أين توجد أفضل مختبرات الأجهزة المفتوحة في العالم؟
- دليل لإجراء اختبار بسيط وغير مؤلم لمستخدمي الأجهزة المحمولة
مع هذه المقالة ، سنقارن بين بعض أكثر أنظمة تحليلات الأجهزة المحمولة شيوعًا. تتضمن عملية إضافة التحليلات إلى التطبيق النظر في العديد من التفاصيل ، وهدفنا هو تزويدك بنصائح مفيدة حول تنفيذ التحليلات. يجب أن تساعدك هذه المعلومات في العثور على نظام تحليلات محمول يناسب احتياجاتك ويجب أن تساعدك على تنفيذه بشكل صحيح في تطبيقك.
التحليلات في الحياة الحقيقية
دعنا نستخدم كمثال تطبيق iOS صغير قمنا بتطويره. يطلق عليه ما أتناوله ، ويهدف إلى تتبع عادات الأكل لدى المستخدم.
يمكن للمستخدمين تتبع وجباتهم ، والتحقق من سجل الوجبات اليومية ، والتبديل بين الأيام في التقويم لمراجعة السجلات السابقة. يحتوي التطبيق على لافتة إعلانية ، ولكن يمكن للمستخدمين الدفع لتعطيله.
عند تصميم ما أتناوله ، كان تركيزنا الأساسي هو السماح للمستخدم بإضافة سجلات وجبات جديدة بسهولة ومراجعة التاريخ اليومي للوجبات بسهولة. أردنا أيضًا استثمار التطبيق من خلال عملية شراء داخل التطبيق لإزالة الإعلان. لفهم ما إذا كنا قد تمكنا من القيام بذلك ، فإننا نتتبع الأحداث التالية في التطبيق:
- عندما يبدأ المستخدم التطبيق في المرة الأولى (تثبيت التطبيق) ،
- عندما يفتح المستخدم قائمة الوجبات اليومية (شاشة التطبيق الرئيسية) ،
- عندما يضيف المستخدم سجلًا جديدًا للوجبات ،
- عندما يُجري المستخدم عملية شراء داخل التطبيق لإزالة الإعلانات.
لاحقًا في هذه المقالة ، سوف نوضح كيف نستخدم التحليلات لتحديد ما إذا كان المستخدمون قد بدأوا في استخدام التطبيق ، وما هي النسبة المئوية للمستخدمين الذين بدأوا في تتبع الوجبات بعد تثبيت التطبيق.
مقارنة الخدمات التحليلية
اليوم ، هناك الكثير من خدمات التحليلات في السوق ، بدءًا من الأنظمة المعروفة مثل Google Analytics إلى الأدوات المتخصصة. سيستغرق تحليلها ومقارنتها جميعًا إلى الأبد ؛ لذلك ، في هذه المقالة ، سنذهب مع تلك التي وجدناها الأكثر ملاءمة. أي أننا اخترنا واجهات لوحة القيادة وصندوق أدوات التنقيب عن البيانات التي يسهل فهمها نسبيًا والعمل معها لمن ليس لديهم خبرة كبيرة في التحليلات ، مثل عملائنا. باعتبارها أنظمة تحليلات موجهة للجوّال ، فهي أيضًا ملائمة من منظور التطوير لأن رمز التحليلات يمكن تنفيذه بسهولة وضبطه في تطبيق جوّال. ها هي الأنظمة:
- Flurry من ياهو
- إجابات Crashlytics
- السعة
- ميكسبانيل
لتحليل كيفية أداء ما أتناوله ، نستخدم أداتين رئيسيتين يوفرهما كل نظام تحليلات تقريبًا: الأحداث والمسارات. تصف الأحداث ما يفعله المستخدمون في التطبيق ، بينما تسمح مسارات التحويل بإجراء تحليل نوعي لهذه البيانات. دعنا نفحص كيفية تنفيذ كل نظام لها لما أتناوله.
ميكسبانيل
يتيح لك Mixpanel تتبع الأحداث المخصصة. يمكن للمطور إضافة معلمات مخصصة إلى الأحداث واستخدام هذه المعلمات لتقسيم مسارات التحويل.
لقد أنشأنا مسارًا يتضمن حدثين: "التثبيت" (الذي يشير إلى الإطلاق الأولي للتطبيق بعد التثبيت) و "إضافة وجبة" (الذي يتتبع كل مرة يضيف فيها المستخدم وجبة). توضح لنا هذه النسبة المئوية للمستخدمين الذين لم يجروا تنزيل التطبيق فحسب ، بل بدأوا أيضًا في استخدامه. يقدر التحويل بنسبة 65٪ ، مما يعني أنه من بين 100 شخص قاموا بتثبيت التطبيق ، بدأ ما يصل إلى 65 في تتبع وجبات الطعام.
يحتاج المطور أحيانًا إلى ظهور الأحداث في لوحة معلومات التحليلات في الوقت الفعلي أو بأقل تأخير بعد حدوثها في التطبيق. على سبيل المثال ، قد يكون أحد المطورين قد أطلق حملة تسويق عبر وسائل التواصل الاجتماعي ويحتاج إلى تتبع كيفية تأثيرها على تطبيقه في الوقت الفعلي. يُظهر Mixpanel الأحداث في الوقت الفعلي تقريبًا. يتم حساب مسارات التحويل التي تم إنشاؤها حديثًا وتصورها على الفور تقريبًا.
السعة
مباشرة بعد أن يضيف المطور مجموعة أدوات تطوير البرمجيات (SDK) الخاصة بـ Amplitude إلى مشروعه ، وبدون أي إعداد إضافي للأحداث أو المسارات ، يبدأ البرنامج في تتبع بيانات المستخدمين النشطين يوميًا وشهريًا (DAU و MAU). نستخدم ذلك كثيرًا في "ما أتناوله" لفهم عدد الأشخاص الذين يستخدمون التطبيق كل يوم.
مثل Mixpanel ، يوفر Amplitude مجموعة أدوات قوية للعمل مع الأحداث والمسارات ؛ يمكن للمطور إنشاء مسار تحويل وتقسيمه حسب المعلمات. على عكس Mixpanel ، يمكن لـ Amplitude تصور المقاطع مباشرة في مخطط قمعي ، وهو أمر مفيد عندما تحتاج إلى فهم كيفية تأثير المعلمة على معدل التحويل. يوضح الرسم البياني أدناه كيف يختلف التحويل من "تثبيت" إلى "إضافة وجبة" وفقًا للغة الواجهة.
كما ترى ، تُظهر الواجهة الروسية تحويلاً أفضل من اللغة الإنجليزية (83٪ مقابل 66٪). لذلك ، مع تحديثات التطبيق التالية ، قد نحتاج إلى إلقاء نظرة أكثر على جمهورنا غير الروسي.
إجابات Crashlytics
كما هو الحال مع Amplitude ، بمجرد إضافة الإجابات SDK إلى مشروع التطبيق ، يبدأ تتبع البيانات. مع عدم بذل أي جهد تقريبًا من المطور ، توفر الإجابات عرضًا منظمًا لبعض مؤشرات الأداء الرئيسية (KPIs) لتطبيق الهاتف المحمول: MAU و DAU والمستخدمين الجدد والجلسات اليومية.
يمكن للمطور تحديد وتتبع مؤشرات الأداء الرئيسية المخصصة كأحداث ، وسوف تصورها الإجابات بنفس الطريقة.
توفر الإجابات أيضًا رؤى حول مدى نشاط جمهورك ومقدار الوقت الذي يقضيه الأشخاص في التطبيق.
تحتفظ تحليلات الإجابات ببيانات آخر 30 يومًا ، ولا تحتوي على مسارات تحويل. وبالتالي ، فهو يعمل فقط للتحليل البسيط وقصير المدى لأداء التطبيق.
Flurry من ياهو
Flurry ليس مفيدًا مثل Mixpanel أو Amplitude عندما تحتاج إلى إنشاء مسارات قمع وإجراء تحليل جماعي.
يمكن لمستخدمي Flurry إنشاء ما يصل إلى 10 شرائح وتطبيقها على مسار التحويل. تتطلب إضافة شريحة جديدة إلى قمع موجود إعادة حسابه ، وقد يستغرق ذلك يومًا واحدًا تقريبًا. لا يمكن للمستخدمين إنشاء أكثر من 10 شرائح لتطبيقها على مسارات التحويل الخاصة بهم. يمكن أن تستغرق حسابات مسارات التحويل المنشأة حديثًا ما يصل إلى ثلاثة أيام.
لم نجد أحداث Flurry ومسارات التحويل مفيدة لما أتناوله ، وقد استخدمنا في الغالب Mixpanel و Amplitude.
ما هو المهم أيضا؟
في حين أن الأحداث ومسارات التحويل هي ميزات أساسية ، إلا أن هناك بعض الأشياء الأخرى التي تدخل في اختيار نظام التحليلات الصحيح.
البيانات الديموغرافية
توفر بعض الخدمات التحليلية بيانات رؤى حول جمهور التطبيق ، حتى لو لم يتم جمعها في التطبيق. يفعلون ذلك عن طريق الحصول على بيانات المستخدم من مصادر أخرى غير تطبيق الهاتف المحمول الخاص بك. يكون هذا مفيدًا عندما تحتاج إلى تحديد المستخدمين المتميزين لديك ولكن تطبيقك لا يجمع أي بيانات عنهم. على سبيل المثال ، في تطبيق What I Eat ، لا يتعين على المستخدمين التسجيل ولا توجد طريقة أخرى يمكننا من خلالها تلقي بيانات المستخدم ، لكننا ما زلنا نرغب في معرفة من يستخدمها من أجل استهداف مستخدمين جدد بدقة باستخدام التطبيق التحديثات.
توفر الإجابات بيانات عن جمهورك ، مثل جنسهم واهتماماتهم. قد تتساءل كيف تفعل ذلك؟ حسنًا ، تم دمج الإجابات بشكل وثيق مع Twitter ، ولأن Twitter يعرف كل شيء تقريبًا عن كل شخص يستخدم النظام الأساسي ، يتم الاستفادة من هذه البيانات الشخصية بواسطة الإجابات.
يقدر Flurry البيانات الديموغرافية عن طريق تقريب معلومات المستخدم التي يتلقاها من التطبيقات التي شاركتها. السبب وراء مشاركة المطورين لهذه المعلومات هو أنهم يتلقون مجموعة بيانات جمهور أكثر دقة من خلال توفير بيانات البصيرة إلى Flurry. يوضح لك Flurry اهتمامات المستخدمين وفئتهم العمرية وجنسهم.
بمساعدة Flurry and Answers ، يمكننا أن نرى أن جمهور What I Eat هو في الغالب من النساء في منتصف العمر المهتمات بالصحة واللياقة البدنية.
لا تقدم Mixpanel و Amplitude أي بيانات ديموغرافية.
واجهة برمجة تطبيقات خارجية لاستيراد وتصدير البيانات
تسمح التحليلات باستيراد وتصدير البيانات من خلال واجهات برمجة التطبيقات الخارجية. يسمح التصدير بتحليل البيانات خارج لوحة معلومات التحليلات (أي بمساعدة برامج التنقيب عن البيانات التابعة لجهة خارجية مثل Windrush و DataHero). يمكّنك استيراد واجهات برمجة التطبيقات من نشر البيانات إلى الأنظمة الأساسية للتحليلات من مصادر مثل الخوادم الخلفية وأنظمة تتبع الإحالة مثل AppsFlyer. دعنا نفحص الخدمات التحليلية التي توفر مثل هذه الوظائف:
- يوفر Amplitude واجهة برمجة تطبيقات خارجية لاستيراد وتصدير الأحداث.
- يحتوي Mixpanel على استيراد وتصدير واجهات برمجة التطبيقات. وهو يدعم لغة JavaScript Query للسماح باستعلامات التصدير المعقدة.
- الإجابات لا تحتوي على واجهة برمجة تطبيقات خارجية. يمكنك تنزيل بيانات الأحداث كملف CSV من لوحة التحكم ، لكنها لا تتضمن أي معلمات للأحداث.
- لا يحتوي Flurry على واجهة برمجة تطبيقات استيراد. يمكنك فقط تصدير البيانات باستخدام واجهة برمجة التطبيقات الخاصة بالتصدير.
السعر
تقوم شركات تحليلات الهاتف المحمول بتجربة الأسعار وقد تغير أسعارها كثيرًا. البيانات التالية مأخوذة من يوليو 2016:
- Flurry and Answers مجانية تمامًا.
- توفر خطة Amplities المجانية 10 ملايين حدث شهريًا. إذا كنت تتوقع تتبع أكثر من ذلك ، فستتكلف 2000 دولار شهريًا. على الرغم من أننا استخدمنا Amplitude في عدد كبير جدًا من المشاريع ، إلا أننا لم نضطر أبدًا إلى التبديل إلى المستوى المدفوع لأن حدود الخطة المجانية مرتفعة أيضًا.
- يحتوي Mixpanel على مستوى مجاني من 25000 حدث شهريًا. مليون حدث تكلف 300 دولار في الشهر. لأكثر من 10 ملايين حدث ، سيتعين عليك دفع 1250 دولارًا شهريًا.
نصائح تنفيذ Analytics
الآن بعد أن عرفنا الاختلافات الرئيسية بين كل نظام تحليلات ، دعنا نتعمق في الجوانب العملية لتنفيذ التحليلات.
قم بواجبك المنزلى
إذا قررت أنك بحاجة إلى تحليلات في تطبيقك ، فإن الترميز ليس أول شيء يجب أن تفكر فيه. نعتقد أن المطور الجيد يجب أن يبدأ بالخطوات التالية:
- اكتب ما تريد تتبعه. . ابدأ بتكوين قائمة بالأسئلة التي تريد أن تجيب عليها التحليلات. بناءً على هذه القائمة ، ضع الأحداث والمعلمات التي تحتاج إلى تتبعها للإجابة على الأسئلة. لا تقم بتضمين التحليلات في التطبيق من أجله.
- أعد صياغته من حيث تحليلاتك. . بمجرد الانتهاء من قائمة الأحداث الخاصة بك ، قم بإضفاء الطابع الرسمي عليها وفقًا لمنصة التحليلات التي حددتها. على سبيل المثال ، بينما يسمح Amplitude بالأحداث مع أي مجموعة من المعلمات ، فإن Google Analytics لديها مجموعة محددة مسبقًا من المعلمات. ضع هذه الفروق الدقيقة في الاعتبار عند تنفيذ التحليلات.
- قم بعمل عرض توضيحي صغير. . قد تكون الفكرة الجيدة هي إنشاء تطبيق اختبار صغير ، وتتبع عشرات الأحداث بمساعدته ، ثم التحقق من كيفية تصور هذه الأحداث في النظام الأساسي الذي تختاره وما هي أدوات التنقيب عن البيانات المتاحة. استخدم هذه المعرفة لتعظيم وظائف النظام الأساسي المحدد عند تنفيذ التحليلات في التطبيق المباشر.
فكر بشكل كبير عند البرمجة
صمم كود التحليلات لجعله مستقلاً عن كود المشروع و SDK للتحليلات. وبالتالي ، ضع كود التحليلات في نظام فرعي منفصل أو فئة منفصلة ، وحدد طرق الواجهة التي يمكن استدعاؤها من كود التطبيق. على سبيل المثال ، عندما ينقر المستخدم على زر القائمة ، فإن كود التطبيق سوف يستدعي رمز فئة التحليلات. بالنسبة إلى تطبيق iOS المكتوب بلغة Swift ، سيبدو كما يلي:
/** Application code: menu tap handler */ @IBAction func menuButtonPressed(sender: UIButton) { //Showing menu, etc... AnalyticsManager.sharedInstance.userTapMenuButton() }
تجمع فئة التحليلات العامة التي يطلق عليها رمز التطبيق قائمة بالمعلمات وترسل هذه البيانات إلى فئة التحليلات المحددة.
/** General analytics class: a bridge between the application code and the specific analytics class */ class AnalyticsManager { static let sharedInstance = AnalyticsManager() private var services: [AnalyticsService] private init() { services = [AmplitudeAnalyticsService()] } func userTapMenuButton() { let name = "MenuTap" let properties: [String: AnyObject] = [/* define your properties */] for service in services { service.trackEvent(withName: name, properties: properties) } } }
ترسل فئة التحليلات المحددة البيانات إلى Analytics SDK. في حالتنا ، هو SDK الخاص بـ Amplitude.
/** Specific analytics class. */ class AmplitudeAnalyticsService: AnalyticsService { func trackEvent(withName name: String, properties: [String : AnyObject]?) { if let propertiesToTrack = properties { Amplitude.instance().logEvent(name, withEventProperties: propertiesToTrack) } else { Amplitude.instance().logEvent(name) } } }
باستخدام مثل هذه البنية ، كلما قررت الانتقال إلى نظام أساسي آخر للتحليلات أو ضبط مجموعة المعلمات لتتبعها ، ستحتاج فقط إلى تغيير رمز فئة التحليلات وليس رمز التطبيق.
تحليل جميع البيانات الخاصة بك
اجمع البيانات من جميع المصادر في منصة التحليلات التي تختارها. إرسال البيانات ليس فقط من تطبيق الهاتف ولكن أيضًا من النهاية الخلفية باستخدام واجهة برمجة تطبيقات خارجية. إذا قمت بتشغيل حملة إعلانية ، فاستخدم نظام تتبع التثبيت مثل AppsFlyer أو Adjust لقياس كفاءتها وفهم من أين يأتي المستخدمون. حدد مسبقًا نظام تتبع التثبيت الذي ستستخدمه للتأكد من أنه يعمل بشكل جيد مع منصة التحليلات الخاصة بك.
التحكم في عدد SDKs
حاول استخدام حزم SDK لمنصات التحليلات الموجودة بالفعل في التطبيق. إذا قمت بتتبع الأعطال باستخدام Crashlytics ، فيمكنك استخدام تحليلات الإجابات دون أي رمز إضافي ، حيث يتم تضمين كل من Crashlytics والإجابات في Fabric SDK. إذا كان تطبيقك يسمح بالتسجيل في Facebook ، فإنه يحتوي بالفعل على SDK الذي ينفذ تحليلات Facebook للجوال ، لذلك يمكنك استخدامه أيضًا.
حاول الجمع بين أنظمة التحليلات المختلفة ، ولكن لا تربك برنامجك الثنائي بعدد كبير جدًا من حزم SDK.
وثقها
أخيرًا ، بالتوازي مع تنفيذ التحليلات لتطبيقك ، اعمل على توثيقه: اكتب الأحداث والمعلمات التي تتبعها وكيف تقوم بذلك. لهذا ، عادة ما نستخدم ملف Readme.md
المخزن في المجلد الأساسي للمشروع. يتم وصف كل حدث بالبيانات التالية:
- اسم الحدث (على سبيل المثال ، "تسجيل المستخدم") ؛
- عند التتبع (على سبيل المثال ، "عند تسجيل مستخدم جديد بنجاح") ؛
- المعلمات (على سبيل المثال ، "البريد الإلكتروني / سلسلة") ؛
- وحدة تحكم حيث يتم استدعاء رمز التتبع (على سبيل المثال ، "SignInController").
يسهل نسيان مثل هذه التفاصيل ، لكنها تصبح مهمة عندما تريد تغيير مجموعة البيانات لتتبعها أو عندما تريد الترحيل إلى نظام أساسي آخر للتحليلات.
تلخيص لما سبق
لا توجد خدمة تحليلات مثالية ؛ كل له ايجابيات وسلبيات. عند اختيار واحد ، يجب أن تزن عوامل مثل نوع التطبيق ، وواجهة لوحة التحليلات ، وميزانيتك ، وما إلى ذلك. قد ترغب حتى في استخدام الحلول المتخصصة ، مثل تحليلات الألعاب التي تم إنشاؤها لتحليل تجارب المستخدم غير الخطية (على سبيل المثال ، GameAnalytics) أو التحليلات الموجهة للمطورين (على سبيل المثال ، Keen IO).
لقد وجدنا مجموعة من الإجابات والسعة للعمل بشكل مثالي مع What I Eat ولتوفير جميع التحليلات اللازمة للتطبيق. في حين أن الإجابات مجانية وتعرض بيانات الديموغرافيات ومؤشرات الأداء الرئيسية للتطبيق ، فإن Amplitude يسمح بتحليل جماعي سلوكي أكثر تعقيدًا. نتعقب أيضًا أعطال التطبيق باستخدام مجموعة أدوات تطوير البرامج من أجوبة.
نود أن نسمع عن مربع أدوات التحليلات الذي تستخدمه في تطبيق الهاتف المحمول الخاص بك. يرجى مشاركة أفكارك في التعليقات.