שלח אירועי אפליקציה ל-GA4 באמצעות Measurement Protocol

1. הקדמה

עדכון אחרון: 2021-06-08

מה שתבנה

במעבדת קוד זה תלמד כיצד לשלוח אירועים חיצוניים ל-GA4 באמצעות Measurement Protocol .

מעבד קוד זה מניח שכבר יש לך אפליקציה עם Google Analytics for Firebase מיושם. אם אתה רוצה ללמוד כיצד להשתלב עם Google Analytics for Firebase, עיין תחילה במעבדת קוד זה . אם אתה רוצה ללמוד כיצד לבנות אפליקציה עם Firebase, עיין ב- Firebase Android Codelab-Build Chat Friendly Chat .

מה תלמד

  • שלבים לביצוע שיחת MP הראשונה שלך
  • הבן את הפרמטרים הנדרשים לשיחה
  • שלח ואמת את שיחת הבדיקה שלך
  • בנו סקריפט לדוגמה ב- Python כדי לבצע את השיחה

מה אתה צריך

  • אפליקציית Android או iOS שלך
  • כל IDE כדי לבצע שינויים
  • חשבון GA4
  • אופציונלי - סביבת פיתוח Python (או Colab )

2. אסוף את שדות החובה

צור סוד API ב-GA4

נווט אל GA4 וצור את סוד ה-API החדש שלך על ידי ניווט אל מנהל מערכת > זרמי נתונים > בחר את הזרם שלך > פרוטוקול מדידה > צור

6e4afca63054d291.png

c9e9ccd2ffba98eb.png

e714cd969fca4a4d.png

אתה יכול לספק כל כינוי, ויוצג הערך הסודי, שבו תוכל להשתמש בשיחה שלך

במקרה שאינך בטוח כיצד לגשת ל-GA4, תוכל לבקר בפרויקט Firebase שלך, לבדוק הגדרות פרויקט > אינטגרציות > Google Analytics, וללחוץ על "ניהול". החיבור של Google Analytics צריך להיות גלוי, ותוכל לנווט ישירות משם גם כן

73b4d77a57eddfba.png

אסוף app_instance_id

אתה יכול להשתמש בכל אחת מהשיטות הבאות כדי לאסוף את ה-app_instance_id שלך.

  1. שימוש ב-BigQuery Export
  2. אחזור מקורי בקוד המקור של האפליקציה שלך

שני אלה מוסברים בפירוט להלן

  1. שימוש ב-BigQuery Export

אם הפעלת את BigQuery Export , תוכל לבצע את השלבים הבאים

  • היכנס ל-Firebase
  • נווט אל הגדרות פרויקט > אינטגרציות > BigQuery
  • לחץ על "הצג ב-BigQuery" ליד מערך הנתונים

הערה: מערך הנתונים יהיה זמין רק לאחר הפעלת החלפת המצב למשך כ-24-48 שעות

63d061088b622961.png

  • ב-BigQuery, אתה יכול לבדוק את user_pseudo_id בטבלה. זהו app_instance_id שבו תוכל להשתמש בשיחה שלך

4b1b80bdc2884581.png

  1. אחזור מקורי בקוד המקור של האפליקציה שלך

אם האפליקציה שלך בנויה באמצעות Java, אתה יכול להשתמש במשהו כזה כדי לאחזר את ה-app_instance_id

 FirebaseAnalytics.getInstance(this).getAppInstanceId().addOnCompleteListener(new OnCompleteListener<String>() {
        @Override
        public void onComplete(@NonNull Task<String> task) {
            if (task.isSuccessful()) {
                String user_pseudo_id = task.getResult();
            }
        }
    });

עבור Kotlin, אתה יכול לנסות את הדברים שלהלן

Thread {
   Firebase.analytics.appInstanceId.addOnSuccessListener { user_pseudo_id ->
       Log.d("Firebase", "user_pseudo_id using appInstanceId is $user_pseudo_id")
       /*
       Store the value to your server or do something with the retrieved id
        */
   }
}.start()

אם יש לך אפליקציית iOS, תוכל להשתמש באפליקציה הבאה ב-Swift

let user_pseudo_id = Analytics.appInstanceID()
print("user_pseudo_id = \(user_pseudo_id)")
/*
Store the value to your server or do something with the retrieved id
*/

להלן קישורים נוספים בהתאם לתשתית שלך

3. בניית השיחה

אתה יכול לבנות שיחה לדוגמה באמצעות בונה האירועים ב-GA4. (זה מחייב אותך להתחבר ולהפעיל עוגיות). ודא שהבורר מוגדר ל-"firebase"

fd78d961f3e48238.png

יהיה עליך למלא את השדות הבאים

  • api_secret - כבר נוצר מוקדם יותר ב-GA4
  • firebase_app_id - כדי לקבל את זה, אתה יכול לנווט אל Admin > זרמי נתונים > בחר את הזרם שלך . זה אמור להיות מוצג כמו להלן

19801c8e5cb29222.png

  • app_instance_id - כבר שלפת את הערך הזה
  • user_id אינו חובה. אתה יכול להשאיר אותו ריק לעת עתה
  • קטגוריה - שנה את זה ל"מותאם אישית" מהתפריט הנפתח, ושם שם אירוע לבחירתך (אל תשתמש באירוע שנאסף אוטומטית ). כאן אנו משתמשים ב-"test_from_codelab"

54cce53df64d697.png

לחלופין, אתה יכול גם לבחור לספק פרמטרים של אירועים ו/או מאפייני משתמש על ידי לחיצה על הכפתורים למטה

16a8f531a3894021.png

לאחר שמילאת הכל, אתה אמור לראות משהו כזה, עם כפתור ל"אימות אירוע"

475801f25c3caf26.png

ברגע שתגיע לזה, לחץ על "אימות אירוע" , הכפתור מסומן בכתום. זה אמור להציג את ההודעה למטה, המציינת שהאירוע תקף, ותראה כפתור ל"שלח ל-GA". בשלב זה, אם האירוע מופיע כלא חוקי, הכלי יגיד לך את השדה המדויק שבו יש בעיה, ואתה יכול לתקן את זה ולנסות שוב

23e4e6800705b4aa.png

כעת תוכל ללחוץ על הכפתור, והוא אמור לשלוח אירוע בדיקה ל-GA4

4. אימות אירועים ב-GA4

לאחר ששלחת את האירוע, תוכל לנווט לחשבון GA4 שלך ולבדוק בזמן אמת. אתה צריך לראות את האירוע מתקיים

994b51ca46bb1973.png

ייתכן שיחלפו כ-24 שעות עד שהאירועים יתפשטו מצפייה בזמן אמת ללשונית דיווח האירועים בפועל, כך שאין צורך לדאוג אם אינך רואה זאת בדיווח האירועים הרגיל באופן מיידי!

אם אתה מתמודד עם בעיות או אי התאמות, אולי כדאי לבדוק את המגבלות הידועות של Measurement Protocol כאן

5. בניית סקריפט Python

כעת, לאחר שבדקת את זה, אתה יכול לבחון את קריאת ה-API ואת מטען האירועים כדי לבנות ארכיטקטורה דומה ב-Python (או בכל שפה שתבחר) שיכולה לבצע את הקריאה הזו. לאחר מכן תוכל לתזמן זאת בתדירות הרצויה ולהפעיל אותה. עבור חלק זה, אתה יכול להשתמש בכל IDE לבחירתך התומך ב-Python או פשוט להשתמש במחברת Google Colab שאינה דורשת התקנה כלשהי במכשיר שלך

בהתייחסות ל-GA4 Event Builder, תראה שנקודת הקצה היא כמו להלן

POST /mp/collect?firebase_app_id=XXXX&api_secret=XXXX 
HTTP/1.1
Host: www.google-analytics.com

מטען האירועים היה כמפורט להלן

{
  "app_instance_id": XXXX,
  "non_personalized_ads": false,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}

אתה יכול לתרגם את זה לפייתון על ידי שימוש במשהו כזה

import requests
import json
url = "https://www.google-analytics.com/mp/collect?firebase_app_id=XXXX&api_secret=XXXX"
payload = {
  "app_instance_id": XXXX,
  "non_personalized_ads": False,
  "events": [
    {
      "name": "test_from_codelab",
      "params": {
        "test_param": "test_123"
      }
    }
  ]
}
r = requests.post(url,data=json.dumps(payload),verify=True)
print(r.status_code)

לאחר שתבצע זאת עם הערכים הנכונים, אתה אמור לראות באופן דומה את האירוע משתקף בזמן אמת ב-GA4.

6. מזל טוב

מזל טוב, השתמשת בהצלחה בפרוטוקול Measurement ב-GA4. עכשיו אתה יכול לבנות ארכיטקטורות פתרונות עוצמתיות כדי לשלוח נתונים משמעותיים יותר ל-Google Analytics ולשפר את הניתוח והניתוח העסקי שלך. כדי להפיק את המרב מכך, אנו מציעים גם להתחבר ל-Google Ads ולייבא אירועים אלו כהמרות. אתה יכול לעיין בשלב 6 במעבדת קוד זה להנחיות מפורטות בנושא. למטרות מעקב המרות, Google Ads תציג רק נתונים המשויכים ל-IDFA או למזהי מכשיר שנאספו מה-SDK של Firebase במהלך 60 הימים האחרונים. זכור שזה עדיין ממשק API של אלפא והקפד לעבור על המגבלות המפורטות כאן שיש לטפל בהן לפני ההשקה המלאה

למדת

  • כיצד לאסוף את המשתנים הנכונים לביצוע שיחות MP
  • כיצד לשלוח ולאמת אירועי בדיקה
  • כיצד לבנות סקריפט לשליחת שיחות MP