الخطوة 1: تنفيذ تجربة تسجيل الدخول
المقدمة: قياس الإحالات الناجحة في "إعلانات iOS" |
الخطوة 1: تنفيذ تجربة تسجيل الدخول |
الخطوة 2: دمج Google Analytics |
الخطوة 3: ابدأ قياس الإحالات الناجحة على الجهاز فقط باستخدام Google Analytics. |
الخطوة 4: تحديد المشاكل الشائعة وحلّها |
الخطوة الأولى هي تنفيذ تجربة تسجيل دخول للسماح للمستخدمين بتقديم عناوين بريدهم الإلكتروني أو أرقام هواتفهم.
يجب أن يقدّم نظام المصادقة الذي تستخدمه عنوان بريد إلكتروني أو رقم هاتف مرتبطَين بالمستخدم. توضّح الخطوات التالية عملية جمع معلومات تسجيل الدخول بأمان باستخدام Firebase Authentication، ولكن يمكنك تخطّي هذه الخطوة إذا كان لديك حاليًا نظام مصادقة يجمع عناوين البريد الإلكتروني أو أرقام هواتف المستخدمين والانتقال إلى الخطوة 2: دمج "إحصاءات Google".
إعداد نظام مصادقة
استخدام طريقة تسجيل الدخول إلى Firebase Authentication
يمكنك استخدام Firebase Authentication للسماح للمستخدمين بتسجيل الدخول إلى تطبيقك باستخدام طريقة واحدة أو أكثر من طرق تسجيل الدخول، بما في ذلك عنوان البريد الإلكتروني ورقم الهاتف وتسجيل الدخول باستخدام كلمة المرور ومزوّدي الهوية المُدمجة (مثل Google أو Facebook أو Twitter). يُرجى مراجعة مقالة بدء استخدام Firebase Authentication.
دمج Firebase Authentication مع نظام مصادقة مخصّص
بدلاً من ذلك، يمكنك دمج Firebase Authentication مع نظام مصادقة customized من خلال تعديل خادم المصادقة لإنشاء رموز مميّزة customized موقَّعة عند تسجيل دخول المستخدم بنجاح. يتلقّى تطبيقك هذا الرمز المميّز ويستخدمه للمصادقة مع Firebase. يُرجى مراجعة مقالة البدء باستخدام نظام مصادقة custom.
الحصول على عنوان البريد الإلكتروني أو رقم الهاتف الخاص بالمستخدم الذي تم مصادقة هويته
بعد إعداد نظام مصادقة باستخدام 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 // ... }
Objective-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; }
مقدّمةالخطوة 2: دمج Google Analytics