İlk adım, kullanıcıların e-posta adreslerini veya telefon numaralarını paylaşmasına olanak tanıyan bir oturum açma deneyimi uygulamaktır.
Kullandığınız kimlik doğrulama sistemi, kullanıcıyla ilişkili bir e-posta adresi veya telefon numarası sağlamalıdır. Aşağıdaki adımlarda, Firebase Authentication'ü kullanarak oturum açma bilgilerini güvenli bir şekilde toplama süreci özetlenmiştir. Ancak kullanıcı e-postalarını veya telefon numaralarını toplayan bir kimlik doğrulama sisteminiz varsa bu adımı atlayabilir ve 2. Adım: Google Analytics'i entegre edin bölümüne geçebilirsiniz.
Bu eğitim için gerekli ön koşulları karşıladığınızdan emin olun
iOS 12 veya sonraki sürümlerde çalışabilen kendi uygulamanız
Uygulamanız, Google Analytics ve Ads'e bağlı bir Firebase uygulaması olarak kayıtlı olmalıdır.
Kullanıcıların e-posta adresi, telefon numarası, şifre ile oturum açma ve birleşik kimlik sağlayıcılar (ör. Google, Facebook veya Twitter) gibi bir veya daha fazla oturum açma yöntemini kullanarak uygulamanızda oturum açmasına izin vermek için Firebase Authentication öğesini kullanabilirsiniz.
Lütfen Firebase Authentication'i kullanmaya başlama başlıklı makaleyi inceleyin.
Firebase Authentication'ü özel bir kimlik doğrulama sistemiyle entegre etme
Alternatif olarak, kimlik doğrulama sunucunuzu, kullanıcı başarılı bir şekilde oturum açtığında özel imzalı jetonlar oluşturacak şekilde değiştirerek Firebase Authentication'ü özel bir kimlik doğrulama sistemiyle entegre edebilirsiniz. Uygulamanız bu jetonu alır ve Firebase ile kimlik doğrulaması yapmak için kullanır. Lütfen Özel kimlik doğrulama sistemini kullanmaya başlama başlıklı makaleyi inceleyin.
Kimliği doğrulanmış kullanıcının e-posta adresini veya telefon numarasını alma
Firebase Authentication ile bir kimlik doğrulama sistemi oluşturduktan sonra, şu anda oturum açmış olan kullanıcıyı alabilirsiniz.
Geçerli kullanıcıyı almanın önerilen yolu, Auth nesnesine bir dinleyici ayarlamaktır:
Swift
handle=Auth.auth().addStateDidChangeListener{auth,userin// Get the user's email addressletemail=user.email// or get their phone numberletphoneNumber=user.phoneNumber// ...}
Objective-C
self.handle=[[FIRAuthauth]addAuthStateDidChangeListener:^(FIRAuth*_Nonnullauth,FIRUser*_Nullableuser){// Get the user's email addressNSString*email=user.email;// or get their phone numberNSString*phoneNumber=user.phoneNumber;// ...}];
Unity
Firebase.Auth.FirebaseAuthauth;Firebase.Auth.FirebaseUseruser;// Handle initialization of the necessary firebase modules:voidInitializeFirebase(){auth=Firebase.Auth.FirebaseAuth.DefaultInstance;auth.StateChanged+=AuthStateChanged;AuthStateChanged(this,null);}// Track state changes of the auth object.voidAuthStateChanged(objectsender,System.EventArgseventArgs){if(auth.CurrentUser!=user){boolsignedIn=user!=auth.CurrentUser&&auth.CurrentUser!=null;user=auth.CurrentUser;if(signedIn){// Get the user's email addressstringemail=user.Email;// or get their phone numberstringphoneNumber=user.PhoneNumber;// ...}}}// Handle removing subscription and reference to the Auth instance.// Automatically called by a Monobehaviour after Destroy is called on it.voidOnDestroy(){auth.StateChanged-=AuthStateChanged;auth=null;}
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-09-06 UTC."],[],[],null,["Step 1: Implement a sign-in experience\n\n\u003cbr /\u003e\n\n|----------------------------------------------------------------------------------------------------------------------------------|\n| Introduction: [Measure iOS Ads conversions](/docs/tutorials/ads-ios-on-device-measurement/index-first-party) |\n| **Step 1: Implement a sign-in experience** \u003cbr /\u003e |\n| Step 2: [Integrate Google Analytics](/docs/tutorials/ads-ios-on-device-measurement/step-2) |\n| Step 3: [Initiate on-device conversion measurement using Google Analytics](/docs/tutorials/ads-ios-on-device-measurement/step-3) |\n| Step 4: [Troubleshoot and handle common issues](/docs/tutorials/ads-ios-on-device-measurement/step-4) |\n\n\u003cbr /\u003e\n\nThe first step is to implement a sign-in experience to allow users to provide\ntheir email addresses or phone number.\n\n**The authentication system that you use must provide an email address or\nphone number associated with the user.** The following steps outline the process\nfor securely collecting sign-in information using Firebase Authentication, but you\ncan skip this step if you already have an authentication system that collects\nuser emails or phone numbers and continue to [Step 2: Integrate Google Analytics](/docs/tutorials/ads-ios-on-device-measurement/step-2).\n\n\u003cbr /\u003e\n\n**Make sure you have the prerequisites for this tutorial**\n\n\u003cbr /\u003e\n\n- Your own app that can run on iOS 12 or higher\n\n- Your app registered as a Firebase App that's linked to Google Analytics\n and Ads\n\n- Your preferred IDE\n\n \u003cbr /\u003e\n\n\u003cbr /\u003e\n\nSet up an authentication system\n\nUse a Firebase Authentication sign-in method\n\nYou can use Firebase Authentication to allow users to sign in to your app using one or\nmore sign-in methods, including email address, phone number, password sign-in,\nand federated identity providers (like Google, Facebook or Twitter).\nPlease review [Get started with Firebase Authentication](/docs/auth/ios/start).\n\nIntegrate Firebase Authentication with a custom authentication system\n\nAlternatively, you can integrate Firebase Authentication with a custom\nauthentication system by modifying your authentication server to produce custom\nsigned tokens when a user successfully signs in. Your app receives this token\nand uses it to authenticate with Firebase. Please review [Get started with a custom\nauthentication system](/docs/auth/ios/custom-auth).\n\nGet the authenticated user's email address or phone number\n\nAfter you've set up an authentication system with Firebase Authentication, you can\nget the currently signed-in user.\n\nThe recommended way to get the current user is by setting a listener on the\n`Auth` object: \n\nSwift \n\n```swift\nhandle = Auth.auth().addStateDidChangeListener { auth, user in\n // Get the user's email address\n let email = user.email\n // or get their phone number\n let phoneNumber = user.phoneNumber\n // ...\n}\n```\n\nObjective-C \n\n```objective-c\nself.handle = [[FIRAuth auth]\n addAuthStateDidChangeListener:^(FIRAuth *_Nonnull auth, FIRUser *_Nullable user) {\n // Get the user's email address\n NSString *email = user.email;\n // or get their phone number\n NSString *phoneNumber = user.phoneNumber;\n // ...\n }];\n```\n\nUnity \n\n```c#\nFirebase.Auth.FirebaseAuth auth;\nFirebase.Auth.FirebaseUser user;\n\n// Handle initialization of the necessary firebase modules:\nvoid InitializeFirebase() {\n auth = Firebase.Auth.FirebaseAuth.DefaultInstance;\n auth.StateChanged += AuthStateChanged;\n AuthStateChanged(this, null);\n}\n\n// Track state changes of the auth object.\nvoid AuthStateChanged(object sender, System.EventArgs eventArgs) {\n if (auth.CurrentUser != user) {\n bool signedIn = user != auth.CurrentUser && auth.CurrentUser != null;\n user = auth.CurrentUser;\n if (signedIn) {\n // Get the user's email address\n string email = user.Email;\n // or get their phone number\n string phoneNumber = user.PhoneNumber;\n // ...\n }\n }\n}\n\n// Handle removing subscription and reference to the Auth instance.\n// Automatically called by a Monobehaviour after Destroy is called on it.\nvoid OnDestroy() {\n auth.StateChanged -= AuthStateChanged;\n auth = null;\n}\n```\n| **Note:** Find more code examples demonstrating Firebase Authentication in the [Firebase quickstarts](https://github.com/firebase/quickstart-ios).\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\n\u003cbr /\u003e\n\n[arrow_back_ios**Introduction**](/docs/tutorials/ads-ios-on-device-measurement/index-first-party)\n[**Step 2** : Integrate Google Analyticsarrow_forward_ios](/docs/tutorials/ads-ios-on-device-measurement/step-2)\n\n\u003cbr /\u003e\n\n*** ** * ** ***"]]