步驟 1:實作登入體驗
簡介: 評估 iOS Ads 轉換 |
步驟 1: 實作登入體驗 |
步驟 2: 整合 Google Analytics |
步驟 3: 使用Google Analytics,開始評估裝置端轉換 |
步驟 4: 疑難排解及處理常見問題 |
第一步是實作登入體驗,讓使用者 他們的電子郵件地址或電話號碼。
您使用的驗證系統必須提供電子郵件地址或 與使用者相關聯的電話號碼。下列步驟會概述程序 使用 Firebase Authentication 安全收集登入資訊,但您 如果您的驗證系統能夠收集 使用者電子郵件或電話號碼,然後繼續步驟 2:整合 Google Analytics。
設定驗證系統
使用 Firebase Authentication 登入方式
您可以運用 Firebase Authentication 讓使用者以一或其中一種方式登入您的應用程式 更多登入方式,包括電子郵件地址、電話號碼、密碼登入 以及聯合識別資訊提供者 (例如 Google、Facebook 或 Twitter)。 請參閱「開始使用 Firebase Authentication」一文。
整合 Firebase Authentication 與自訂驗證系統
或者,您也可以將 Firebase Authentication 與自訂欄位整合 並修改驗證伺服器 使用者成功登入時,系統會隨即傳送已簽署權杖。應用程式收到這個權杖 並使用 Firebase 進行驗證。請參閱這篇文章 驗證系統
取得已驗證使用者的電子郵件地址或電話號碼
使用 Firebase Authentication 設定驗證系統後,即可 取得目前登入的使用者。
如要取得目前的使用者,建議您設定
Auth
物件:
Swift
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 // ... }
目標-C
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; // ... }];
Unity
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; }