إطلاق الحملات على "إعلانات Google" باستخدام الأحداث المخصّصة وFlutter في "إحصاءات Google"

1. مقدمة

تاريخ آخر تعديل: 25/01/2021

ما الذي ستنشئه

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

سنستخدم تطبيق Flutter التلقائي مع أداة عدّاد بسيطة. سنعلن عن تطبيقنا للمستخدمين المحتملين الذين يُرجح أن ينقروا على الأداة.

bdbf1fc3cbf49ac7.png

المعلومات التي ستطّلع عليها

  • كيفية إعداد "إحصاءات Google لبرنامج Firebase" (GA4F) في Flutter
  • كيفية إنشاء أحداث ومَعلمات مخصّصة
  • كيفية استيراد الأحداث من Firebase إلى "إعلانات Google"
  • كيفية إطلاق حملات إجرائية باستخدام أحداث مخصّصة

المتطلبات

  • الإصدار 3.6 من "استوديو Android" أو إصدار أحدث
  • Xcode (لدعم iOS)
  • حساب Firebase
  • حساب "إعلانات Google"

2. بدء مشروع جديد على Flutter

يمكنك إنشاء تطبيق Flutter بتصميم بسيط. عليك تعديل تطبيق البداية هذا للدرس التطبيقي حول الترميز.

شغِّل "استوديو Android".

  1. إذا لم تكن لديك مشاريع مفتوحة، اختَر بدء تطبيق Flutter جديد من صفحة الترحيب. أو حدد ملف > جديد > مشروع Flutter الجديد
  2. اختَر تطبيق Flutter كنوع المشروع، ثم انقر على التالي.
  3. تأكَّد من أنّ مسار Flutter SDK يحدّد موقع حزمة SDK. (اختَر تثبيت حزمة تطوير البرامج (SDK) إذا كان حقل النص فارغًا.)
  4. أدخِل اسم المشروع وانقر على التالي.
  5. استخدِم اسم الحزمة التلقائي المُقترَح من "استوديو Android"، وانقر على التالي.
  6. انقر على إنهاء.
  7. انتظِر حتى يتم تثبيت حزمة تطوير البرامج (SDK) وإنشاء المشروع في "استوديو Android".

3- إنشاء مشروع على Firebase وإعداده

لبدء استخدام Firebase، ستحتاج إلى إنشاء مشروع على Firebase وإعداده.

إنشاء مشروع على Firebase

  1. سجِّل الدخول إلى Firebase.

في "وحدة تحكُّم Firebase"، انقر على "إضافة مشروع" (أو إنشاء مشروع)، وأدخِل اسمًا لمشروع Firebase باسم Firebase-Flutter-Ads أو أي اسم تريده.

e9a8e1b1c7c52125.png

  1. انقر على خيارات إنشاء المشروع. وافِق على بنود Firebase إذا طُلب منك ذلك. يجب تفعيل "إحصاءات Google" لهذا المشروع، لأنّك تحتاج إلى أحداث "إحصاءات Google" لتتبُّع أحداث الإجراءات وتحليل الإحالات الناجحة.

e58151a081f0628.png

لمزيد من المعلومات عن مشاريع Firebase، يمكنك الاطّلاع على مقالة فهم مشاريع Firebase.

4. ضبط Firebase على مستوى النظام الأساسي (Android)

3e5b8f1b6ca538c4.png

ضبط Android

  1. في وحدة تحكُّم Firebase، اختَر نظرة عامة على المشروع في شريط التنقّل الأيمن، ثم انقر على الزرّ Android ضمن "البدء بإضافة Firebase إلى تطبيقك".

سيظهر لك مربّع الحوار في الشاشة التالية.

3b7d3b33d81fe8ea.png

  1. القيمة المهمة التي يجب تقديمها هي اسم حزمة Android، الذي ستحصل عليه باتّباع الخطوة التالية.
  1. في دليل تطبيق Flutter، افتح الملف android/app/src/main/AndroidManifest.xml.
  2. في العنصر manifest، ابحث عن قيمة السلسلة للسمة package. هذه القيمة هي اسم حزمة Android (مثل com.yourcompany.yourproject). انسخ هذه القيمة.
  3. في مربع حوار Firebase، الصق اسم الحزمة المنسوخة في الحقل Android package name.
  4. لا نحتاج إلى مفتاح SHA-1 هنا، إلا إذا كنت تخطّط لاستخدام ميزة تسجيل الدخول بحساب Google أو الروابط الديناميكية من Firebase (تجدر الإشارة إلى أنّ هذه الروابط ليست جزءًا من هذا الدرس التطبيقي حول الترميز). إذا كنت تخطط لاستيراد بيانات in_app_purchase من Google Play، ستحتاج إلى ضبط المفتاح لاحقًا.
  5. انقر على تسجيل التطبيق.
  6. المتابعة في Firebase، اتّبِع التعليمات لتنزيل ملف الإعداد google-services.json.

52f08aa18c8d59d0.png

  1. انتقِل إلى دليل تطبيق Flutter، ثم انقل ملف google-services.json (الذي نزّلته للتو) إلى دليل android/app.
  2. بالعودة إلى "وحدة تحكُّم Firebase"، تخطي الخطوات المتبقية والرجوع إلى الصفحة الرئيسية لوحدة تحكُّم Firebase.
  3. وأخيرًا، تحتاج إلى مكوِّن Gradle الإضافي لخدمات Google لقراءة ملف google-services.json الذي تم إنشاؤه من خلال Firebase.
  4. في بيئة التطوير المتكاملة (IDE) أو المحرّر، افتح android/app/build.gradle، ثم أضِف السطر التالي ليكون السطر الأخير في الملف:
apply plugin: 'com.google.gms.google-services'
  1. افتح android/build.gradle، ثم أضِف تبعية جديدة داخل العلامة buildscript:
buildscript { 
   repositories {
      // ...
   }
   dependencies {
      // ...
      Classpath 'com.google.gms:google-services:4.3.3'
   }
}
  1. إذا كان تطبيقك لا يزال قيد التشغيل، أغلِقه وأعِد إنشائه للسماح لتطبيق Gradle بتثبيت الاعتماديات.

لقد انتهيت من ضبط تطبيق Flutter لنظام التشغيل Android بالنسبة إلى نظام التشغيل iOS، يمكنك الاطّلاع على هذا الدرس التطبيقي حول الترميز ( التعرّف على منصة Firebase عند استخدام Flutter)

5- ضبط "إحصاءات Firebase" في Flutter

في هذه الخطوة، ستبدأ في استخدام حزمة Firebase Analytics المسماة firebase_analytics، والتي تحتوي على ميزات Firebase Analytics.

يدير ملف pubspec مواد العرض الخاصة بتطبيق Flutter. في pubspec.yaml، ألحق firebase_analytics: ^6.2.0 (الإصدار 6.2.0 من firebase_analytics أو إصدار أحدث) بقائمة الاعتماديات :

dependencies: 
   flutter: 
      sdk: flutter 
   cupertino_icons: ^0.1.2 
   firebase_analytics: ^6.2.0   # add this line

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

flutter packages get 
Running "flutter packages get" in startup_namer... 
Process finished with exit code 0

يؤدي تنفيذ Pub get أيضًا إلى إنشاء ملف pubspec.lock تلقائيًا مع قائمة بجميع الحِزم التي يتم سحبها إلى المشروع وأرقام إصداراتها.

في lib/main.dart، استورِد الحزمة الجديدة:

import 'package:firebase_analytics/firebase_analytics.dart';

في الفئة MyApp، ابدأ الكائن FirebaseAnalytics من خلال استدعاء الدالة الإنشائية.

class MyApp extends StatelessWidget {
 static FirebaseAnalytics analytics = FirebaseAnalytics();
   ...
}

أصبحت الآن جاهزًا لتنشيط بعض سجلات الأحداث المخصّصة.

6- تسجيل الأحداث المخصّصة باستخدام "إحصاءات Firebase"

إذا أردت إنشاء نموذج جديد في تطبيق Flutter، سيظهر لك متغيّر _counter وطريقة _incrementCounter() داخل فئة State التلقائية. والآن، تريد تسجيل أحداث مخصصة عندما يتم النقر على زر الزيادة أكثر من خمس مرات من المستخدمين المتحمسين للغاية. ونطلق لاحقًا حملة تطبيقات لجذب المستخدمين المتحمسين المحتملين

نريد أولاً تمرير العناصر التحليلية التي نفّذناها إلى التطبيق المصغّر Stateful. نبدأ بإضافة مَعلمة "إحصاءات Google" إلى الدالة الإنشائية MyHomePage.

MyHomePage({Key key, this.title, this.analytics}) : super(key: key);

وعليك أيضًا إضافة مَعلمة "إحصاءات Google" عند استدعاء الدالة الإنشائية.

home: MyHomePage(
   title: 'Flutter Demo Home Page',
   analytics: analytics,
),

يمكنك الآن تسجيل الأحداث بسهولة باستخدام الطريقة logEvent(). أضِف الطريقة واعمل على زيادة المتغيّر _counter.

void _incrementCounter() {
 setState(() {
   _counter++;

   //add this
   if(_counter > 5) { 
     widget.analytics.logEvent(name: "clicked_counter"); 
   }

 });
}

أصبح تطبيقك الآن جاهزًا لتنشيط سجل الأحداث المخصّص.

يمكنك أيضًا استخدام طرق مُعَدة مسبقًا لتنشيط الأحداث.

f0742c956977df1d.png

كل شيء جاهز الآن. في "استوديو Android"، شغِّل "main.dart".

(اختياري) إرسال معلومات إضافية إلى "إحصاءات Firebase" باستخدام المَعلمات

يمكنك إرسال معلومات إضافية من خلال المَعلمات. يمكن تسجيل المَعلمات المخصَّصة لإعداد التقارير في تقارير "إحصاءات Google". ويمكن استخدامها أيضًا كفلاتر في تعريفات الجمهور التي يمكن تطبيقها على كل تقرير. إذا كان تطبيقك مرتبطًا بمشروع على BigQuery، يتم أيضًا العثور على مَعلمات مخصّصة في BigQuery (اطّلع على مقالة BigQuery Export for Firebase).

نُضبط القيمة _counter كمَعلمة هنا.

void _incrementCounter() {
 setState(() {
   _counter++;

   if(_counter > 5) {
     widget.analytics.logEvent(name: "clicked_counter", parameters: {'count' : _counter});
   }
 });
}

التحقّق من الأحداث وتصحيح الأخطاء فيها

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

32b01a1412ab2ba5.png

ضَع علامة على clicked_counter كإحالة ناجحة من خلال تمرير مفتاح وضع علامة كإحالة ناجحة إلى اليسار.

e6b420a73db88f03.png

إذا كان الحدث في علامة التبويب "الإحالة الناجحة"، يعني ذلك أنّك وضعت علامة "إحالة ناجحة" بنجاح على الحدث. ستتمكّن "إعلانات Google" الآن من استيراد هذا الحدث من Firebase.

لأغراض تصحيح الأخطاء، استخدِم Firebase DebugView. لمزيد من التفاصيل، يُرجى الاطّلاع على حدث تصحيح الأخطاء.

7. استيراد أحداث الإحصاءات في "إعلانات Google"

بعد اكتمال عملية إعداد Firebase-Flutter، ستكون جاهزًا لإطلاق حملات التطبيقات التي تتضمّن أحداثًا إجرائية. ابدأ بربط Firebase بحساب "إعلانات Google". من خلال ربط Firebase بحساب "إعلانات Google"، يمكن لحملات التطبيقات استيراد أحداث Firebase. تساعد هذه العملية أيضًا "إعلانات Google" في تعزيز حملات التطبيقات من خلال السماح لها بالاطّلاع على مزيد من المعلومات عن جماهيرها.

  1. انتقِل إلى إعدادات Firebase من خلال النقر على الزر بجانب نظرة عامة على المشروع.
  2. في علامة التبويب عمليات الدمج، سيظهر لك إعلانات Google والزر ربط. انقر على ربط، ثمّ انقر على متابعة.

b711bf2e94fa0895.png

  1. اختَر حسابًا على "إعلانات Google".

اكتمل الآن جزء Firebase.

انتقِل إلى إعلانات Google.

  1. سجِّل الدخول وانتقِل إلى الأدوات الإعدادات > القياس > الإحالات الناجحة لاستيراد الأحداث المخصّصة كإحالات ناجحة.
  2. انقر على الزرّ + لإضافة إجراءات إحالات ناجحة جديدة.

73cec8d2e80eab03.png

  1. اختَر مواقع "إحصاءات Google 4" (Firebase) وانقر على متابعة.

4b1d8f6a712b2ac6.png

  1. يمكنك الاطّلاع على جميع أحداث الإحصاءات التي تمّ وضع علامة "إحالة ناجحة" عليها. ابحث عن حدث clicked_counter الذي سبق أن نفّذناه.

ba1bbe6b2924fac8.png

  1. تحقَّق من الإجراء، وانقر على استيراد، ثم انقر على متابعة.

ab35e341dff32e48.png

بعد ضبط clicked_counter كإجراء إحالة ناجحة، يمكنك إطلاق حملات إجرائية يمكنها استهداف المستخدِمين الذين يُرجّح أن ينشط clicked_counter حدث أكثر من 5 مرّات.

8. إطلاق حملات التطبيقات الإجرائية مع الأحداث التي تم استيرادها

  1. انتقل إلى علامة التبويب "الحملة" في حسابك الحالي، وابدأ حملة جديدة بالنقر على الزر +. انقر على [حملة جديدة]، ثم انقر على متابعة.
  2. ابدأ حملة للترويج للتطبيقات باستخدام الخيار عمليات تثبيت التطبيق.

af98c44d1476558.png

  1. ابحث عن تطبيقك عن طريق كتابة اسم التطبيق أو اسم الحزمة أو الناشر.
  2. في قسم عروض الأسعار، اختَر الإجراءات داخل التطبيق في القائمة المنسدلة.
  3. ابحث عن الحدث المخصّص في القائمة المتوفّرة. حدِّد تكلفة الإجراء المستهدَفة، وأكمِل أي خيارات إضافية.

885956ad00592eb3.png

  1. أكمِل إعدادات حملتك.

9. تهانينا

تهانينا، لقد تم دمج Firebase مع "إعلانات Google" بنجاح. سيساعدك ذلك في تعزيز أداء حملتك باستخدام الأحداث المستورَدة من Firebase.

لقد تعلمت

  • كيفية ضبط "إحصاءات Firebase" لبرنامج Flutter
  • كيفية تسجيل الأحداث المخصّصة باستخدام "إحصاءات Firebase" في تطبيق Flutter
  • كيفية استيراد الأحداث واستخدامها للحملات الإجرائية