23 Ocak 2026 Cuma

 

Firebase Authentication (Login – Register) Rehberi

Bir mobil uygulamada kullanıcı girişi (login) ve kayıt (register) sistemi artık neredeyse zorunlu hale geldi. Firebase Authentication, bu süreci Android geliştiriciler için hızlı, güvenli ve zahmetsiz bir şekilde çözmemizi sağlar.

Bu yazıda, Android (Kotlin) + Firebase Authentication kullanarak temel bir Login–Register sisteminin nasıl kurulacağını adım adım anlatıyorum.


Firebase Authentication Nedir?

Firebase Authentication; kullanıcıların uygulamaya giriş yapmasını sağlayan bir kimlik doğrulama servisidir. Desteklediği yöntemlerden bazıları:

  • Email / Password

  • Google ile giriş

  • Telefon numarası

  • Anonim giriş

Bu rehberde en sık kullanılan yöntem olan Email / Password üzerinde duracağız.


1️⃣ Firebase Console Ayarları

  1. Firebase Console → Authentication

  2. Sign-in method sekmesi

  3. Email/Password aktif edilir

Bu işlem yapılmadan kod tarafı çalışmaz.


2️⃣ Gerekli Bağımlılıklar (Gradle)

implementation("com.google.firebase:firebase-auth")

Firebase BoM kullanıyorsan ekstra versiyon belirtmene gerek yoktur.


3️⃣ FirebaseAuth Nesnesini Tanımlama

val auth = FirebaseAuth.getInstance()

Bu nesne ile tüm login–register işlemleri yapılır.


4️⃣ Kullanıcı Kayıt (Register) İşlemi

auth.createUserWithEmailAndPassword(email, password)
    .addOnSuccessListener {
        val user = auth.currentUser
    }
    .addOnFailureListener { exception ->
        exception.printStackTrace()
    }

Başarılı kayıt sonrası kullanıcı otomatik olarak giriş yapmış olur.


5️⃣ Kullanıcı Giriş (Login) İşlemi

auth.signInWithEmailAndPassword(email, password)
    .addOnSuccessListener {
        // Ana ekrana yönlendir
    }
    .addOnFailureListener {
        // Hata mesajı göster
    }

6️⃣ Oturum Kontrolü (Auto Login)

Uygulama açıldığında kullanıcı giriş yapmış mı kontrol edilir:

val currentUser = auth.currentUser
if (currentUser != null) {
    // Kullanıcı giriş yapmış
}

Bu sayede her seferinde login ekranı gösterilmez.


7️⃣ Çıkış Yapma (Logout)

auth.signOut()

Basit ama çok kritik bir satır.


8️⃣ Firestore ile Kullanıcı Bilgisi Kaydetme

Authentication sadece kimlik doğrular. Ek bilgiler için Firestore kullanılır:

val userData = hashMapOf(
    "email" to email,
    "createdAt" to FieldValue.serverTimestamp()
)

db.collection("users")
  .document(auth.currentUser!!.uid)
  .set(userData)

9️⃣ Sık Yapılan Hatalar

  • ❌ Email formatı kontrol edilmemesi

  • ❌ Zayıf şifre (min. 6 karakter)

  • ❌ Hata mesajlarını kullanıcıya göstermemek

  • ❌ Logout sonrası ekran kontrolü yapmamak


ZaTH Developer Tavsiyesi 💡

Authentication işlemlerini ViewModel içinde yönetmek uygulamayı daha temiz ve test edilebilir yapar.

Sonradan kolayca eklenebilecek özellikler:

  • Google ile giriş

  • Şifre sıfırlama

  • Email doğrulama


Sonuç

Firebase Authentication sayesinde:

  • Güvenli

  • Hızlı

  • Ölçeklenebilir

bir Login–Register sistemi kurabilirsin.

ZaTH Developer olarak; altyapısı sağlam, kullanıcı deneyimi iyi uygulamalar geliştirmeyi önemsiyorum. Bir sonraki yazıda Authentication’ı Firestore Rules ile nasıl güvenli hale getireceğimizi anlatacağım 🚀


Hiç yorum yok:

Yorum Gönder

  Firebase + AdMob Entegrasyonu (Android Uygulamalar İçin) Mobil uygulama geliştiren herkesin aklındaki sorulardan biri şudur: Bu uygulamada...