1. מבוא
עדכון אחרון:8 ביוני 2021
מה תפַתחו
ב-Codelab הזה תלמדו איך לשלוח אירועים חיצוניים ל-GA4 באמצעות Measurement Protocol.
בקודלאב הזה אנחנו מביאים בחשבון שכבר יש לכם אפליקציה עם Google Analytics for Firebase מוטמע. כדי ללמוד איך לשלב את Google Analytics for Firebase, יש לקרוא קודם את ה-Codelab הזה. רוצים לדעת איך מפתחים אפליקציה באמצעות Firebase? כדאי לעיין בCodelab של Firebase ל-Android – פיתוח Friendly Chat.
מה תלמדו
- השלבים לביצוע השיחה הראשונה בשימוש ב-MP
- הסבר על הפרמטרים הנדרשים לשיחה
- שליחה ואימות של שיחת הבדיקה
- כדי לבצע את הקריאה, צריך ליצור סקריפט לדוגמה ב-Python
מה צריך להכין
- האפליקציה ל-Android או ל-iOS
- כל סביבת פיתוח משולבת (IDE) כדי לבצע שינויים
- חשבון GA4
- אופציונלי – סביבת פיתוח של Python (או Colab)
2. איסוף השדות החובה
יצירת API Secret ב-GA4
עוברים אל GA4 ויוצרים את סוד ה-API החדש: ניהול > מקורות נתונים > בחירת מקור הנתונים > Measurement Protocol > יצירה
אפשר לספק כינוי כלשהו, והערך הסודי יוצג. תוכלו להשתמש בו בשיחה.
אם אתם לא בטוחים איך לגשת ל-GA4, תוכלו להיכנס לפרויקט ב-Firebase, לעבור אל 'הגדרות הפרויקט' > 'שילובים' > 'Google Analytics' וללחוץ על 'ניהול'. החיבור ל-Google Analytics אמור להיות גלוי, ואפשר לנווט אליו ישירות גם משם.
איסוף של app_instance_id
אפשר להשתמש באחת מהשיטות הבאות כדי לאסוף את app_instance_id.
- שימוש ב-BigQuery Export
- אחזור באופן מקורי בקוד המקור של האפליקציה
שני הנושאים האלה מוסברים בהרחבה בהמשך.
- שימוש ב-BigQuery Export
אם הפעלתם את ייצוא BigQuery, תוכלו לפעול לפי השלבים הבאים:
- כניסה ל-Firebase
- עוברים אל הגדרות הפרויקט > שילובים > BigQuery
- לוחצים על 'הצגה ב-BigQuery' ליד מערך הנתונים.
הערה : מערך הנתונים יהיה זמין רק אחרי שהמתג במצב מופעל למשך כ-24-48 שעות
- ב-BigQuery, אפשר לבדוק את הפרמטר user_pseudo_id בטבלה. זהו ה-app_instance_id שבו אפשר להשתמש בשיחה
- אחזור באופן מקורי בקוד המקור של האפליקציה
אם האפליקציה שלכם נוצרה באמצעות 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. (לשם כך צריך להתחבר ולהפעיל קובצי Cookie). מוודאים שהמתג מוגדר ל-firebase
עליך למלא את השדות הבאים
- api_secret – כבר נוצר מוקדם יותר ב-GA4
- firebase_app_id – כדי לקבל את המזהה הזה, עוברים אל ניהול > מקורות נתונים > בחירת מקור הנתונים. השם אמור להיות מוצג כך:
- app_instance_id – כבר אחזרתם את הערך הזה
- השדה user_id הוא לא חובה. אפשר להשאיר את השדה ריק בינתיים
- קטגוריה – משנים את הערך ל'מותאם אישית' בתפריט הנפתח, ומזינים שם אירוע לבחירתכם (אין להשתמש באירוע שנאסף באופן אוטומטי). כאן נשתמש ב-"test_from_codelab"
אפשר גם לספק פרמטרים של אירועים ו/או מאפייני משתמשים בלחיצה על הלחצנים שבהמשך.
אחרי שממלאים את כל הפרטים, אמורה להופיע הודעה דומה לזו, עם לחצן 'אימות אירוע'.
בשלב הזה, צריך ללחוץ על 'אימות אירוע' , הלחצן המודגש בכתום. ההודעה אמורה להופיע למטה, ולציין שהאירוע חוקי. יופיע הלחצן 'שליחה אל GA'. בשלב הזה, אם האירוע נמצא כלא חוקי, הכלי יציין מה השדה המדויק שבו יש בעיה ותוכלו לתקן אותה ולנסות שוב.
עכשיו אפשר ללחוץ על הלחצן, והוא אמור לשלוח אירוע בדיקה ל-GA4.
4. אימות אירועים ב-GA4
אחרי ששולחים את האירוע, אפשר לעבור לחשבון GA4 ולבדוק את הנתונים בזמן אמת. האירוע אמור להופיע
יכול להיות שיחלפו כ-24 שעות עד שהאירועים יועברו מהתצוגה בזמן אמת לכרטיסייה של דוחות האירועים בפועל, כך שאין מה לדאוג אם הם לא מופיעים בדוחות האירועים הרגילים באופן מיידי.
אם נתקלת בבעיות או בפערים בנתונים, מומלץ לבדוק כאן את המגבלות הידועות של Measurement Protocol
5. פיתוח סקריפט ב-Python
עכשיו, אחרי שבדקתם את הקריאה ל-API ואת עומס העבודה של האירוע, תוכלו לבדוק אם אפשר ליצור ארכיטקטורה דומה ב-Python (או בכל שפה אחרת) שיכולה לבצע את הקריאה הזו. אחר כך תוכלו לתזמן את זה בתדירות הרצויה ולהפעיל אותה. בשלב הזה, אפשר להשתמש בכל סביבת פיתוח משולבת (IDE) לבחירתכם שתומכת ב-Python, או פשוט להשתמש במחברות של Google Colab, שלא דורשות התקנה במכשיר.
חוזרים לכלי ליצירת אירועים ב-GA4, ומבחינים שכתובית נקודת הקצה היא:
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"
}
}
]
}
אפשר לתרגם את זה ל-Python באמצעות משהו כזה
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 Protocol ב-GA4. עכשיו אתם יכולים ליצור ארכיטקטורות פתרונות מתקדמות כדי לשלוח נתונים משמעותיים יותר ל-Google Analytics ולשפר את ניתוח הנתונים של השיווק והעסק. כדי להפיק את המקסימום מהתהליך הזה, מומלץ גם להתחבר ל-Google Ads ולייבא את האירועים האלה כהמרות. הוראות מפורטות לכך מפורטות בשלב 6 בcodelab הזה. למטרות מעקב המרות, מערכת Google Ads תציג רק נתונים שמשויכים למזהי IDFA או למזהי מכשירים שנאספו מ-Firebase SDK ב-60 הימים האחרונים. חשוב לזכור שמדובר עדיין ב-API בגרסת אלפא. חשוב לבדוק את המגבלות המפורטות כאן , וצריך לטפל בהן לפני ההשקה המלאה.
מה למדתם
- איך לאסוף את המשתנים הנכונים לביצוע קריאות ל-MP
- איך שולחים ומאמתים אירועי בדיקה
- איך לבנות סקריפט לשליחת קריאות ל-MP