שלב 1: הטמעת חוויית כניסה
מבוא: מדידת המרות ב-Google Ads ל-iOS |
שלב 1: הטמעת חוויית כניסה לחשבון |
שלב 2: שילוב Google Analytics |
שלב 3: מפעילים מדידת המרות במכשיר באמצעות Google Analytics |
שלב 4: פתרון בעיות נפוצות |
השלב הראשון הוא להטמיע תהליך כניסה לחשבון שמאפשר למשתמשים לספק את כתובות האימייל או מספר הטלפון שלהם.
מערכת האימות שבה אתם משתמשים חייבת לספק כתובת אימייל או מספר טלפון שמשויכים למשתמש. השלבים הבאים מתארים את התהליך לאיסוף מאובטח של פרטי הכניסה באמצעות Firebase Authentication, אבל אפשר לדלג על השלב הזה אם כבר יש לכם מערכת אימות שאוספת כתובות אימייל או מספרי טלפון של משתמשים, ולהמשיך לשלב 2: שילוב Google Analytics.
ודאו שאתם עומדים בדרישות המוקדמות למדריך הזה
אפליקציה משלכם שיכולה לפעול ב-iOS מגרסה 12 ואילך
האפליקציה שלכם רשומה כאפליקציית Firebase שמקושרת ל-Google Analytics ול-Google Ads
סביבת הפיתוח המשולבת (IDE) המועדפת עליכם
הגדרת מערכת אימות
שימוש בשיטת כניסה לחשבון Firebase Authentication
אפשר להשתמש ב-Firebase Authentication כדי לאפשר למשתמשים להיכנס לאפליקציה באמצעות שיטה אחת או יותר, כולל כתובת אימייל, מספר טלפון, כניסה באמצעות סיסמה וספקי זהויות מאוחדים (כמו Google, Facebook או Twitter). מומלץ לעיין במאמר תחילת העבודה עם Firebase Authentication.
שילוב של Firebase Authentication עם מערכת אימות בהתאמה אישית
לחלופין, אפשר לשלב את Firebase Authentication עם מערכת אימות בהתאמה אישית על ידי שינוי שרת האימות כך שייצור אסימונים חתומות בהתאמה אישית כשמשתמש נכנס לחשבון. האסימון הזה מגיע לאפליקציה, והיא משתמשת בו כדי לבצע אימות ב-Firebase. מומלץ לעיין במאמר תחילת העבודה עם מערכת אימות בהתאמה אישית.
אחזור של כתובת האימייל או מספר הטלפון של המשתמש המאומת
אחרי שמגדירים מערכת אימות באמצעות Firebase Authentication, אפשר לקבל את המשתמש שמחובר כרגע.
הדרך המומלצת לקבל את המשתמש הנוכחי היא להגדיר מאזין על האובייקט Auth
:
handle = Auth.auth().addStateDidChangeListener { auth, user in // Get the user's email address let email = user.email // or get their phone number let phoneNumber = user.phoneNumber // ... }
self.handle = [[FIRAuth auth] addAuthStateDidChangeListener:^(FIRAuth *_Nonnull auth, FIRUser *_Nullable user) { // Get the user's email address NSString *email = user.email; // or get their phone number NSString *phoneNumber = user.phoneNumber; // ... }];
Firebase.Auth.FirebaseAuth auth; Firebase.Auth.FirebaseUser user; // Handle initialization of the necessary firebase modules: void InitializeFirebase() { auth = Firebase.Auth.FirebaseAuth.DefaultInstance; auth.StateChanged += AuthStateChanged; AuthStateChanged(this, null); } // Track state changes of the auth object. void AuthStateChanged(object sender, System.EventArgs eventArgs) { if (auth.CurrentUser != user) { bool signedIn = user != auth.CurrentUser && auth.CurrentUser != null; user = auth.CurrentUser; if (signedIn) { // Get the user's email address string email = user.Email; // or get their phone number string phoneNumber = user.PhoneNumber; // ... } } } // Handle removing subscription and reference to the Auth instance. // Automatically called by a Monobehaviour after Destroy is called on it. void OnDestroy() { auth.StateChanged -= AuthStateChanged; auth = null; }
מבואשלב 2: שילוב של Google Analytics