Xamarin kullanarak bir mobil uygulama geliştirirken muhtemelen Firebase implementasyonunda hata almışsınızdır. Ben Firebase implementasyonunda hata almadan ilerleyen ne iOS tarafında ne de Android tarafında henüz göremedim. Hep küçük detayları gözden kaçırdığımız için bazı küçük hatalar alıyoruz. Android uygulamanızı compile ettiniz ve Firebase Authentication özelliğini test edeceğiniz sırada Default FirebaseApp is not initialized hatası mı alıyorsunuz? Çözüm adımlarına beraber bakalım:
Default FirebaseApp is not initialized Android Hatası
Bu hatanın sebebi bir kaç farklı şeyden dolayı olabiliyor. Bu sebepten dolayı adım adım ilerlemekte fayda var diye düşünüyorum. İlk olarak projenize olması gerektiği gibi google-services.json dosyasını dahil etmiş misiniz bunu kontrol edelim.
Firebase Console üzerinden uygulamanızı oluşturduğunuzu düşünüyorum. Oluşturmuş olduğunuz Android uygulamanız için google-services.json dosyasını indirin. İndirmiş olduğunuz dosya içerisindeki Package name bilgisi AndroidManifest.xml dosyası içerisindeki ile aynı mı ? Eğer aynı değilse console üzerinden Package name bilgisini güncelleyin ve bu dosyanın güncel halini indirin.
İlk adımı çözdüğünüzü var sayarak bir sonraki adıma geçiyorum. Android projesine Ekle diyerek Mevcut Dosya deyip indirdiğiniz dosyayı seçiniz. Dosyayı kopyalamasına izin verin. Bazen sürükle bırak gibi metodlar hataya yol açabiliyor.
Android projesine eklemiş olduğunuz dosyanın IDE üzerinde Derleme Eylemi (Build Action) bilgisini güncelleyeceğiz. Eğer Firebase kütüphanelerini (NuGetlerini / dependencieslerini) yeni indirdiyseniz bu işlemi yapmadan önce IDEnizi kapatıp açmanızı öneririm çünkü seçeceğimiz seçenek bu işlemler sonrasında IDEyi kapatıp açınca geliyor. Derleme Eylemi olarak GoogleServices.Json seçeceğini seçiniz.
Bu işlemi yaptıktan sonra IDEnizi kapatıp açın, çözümü temizleyin ve yeniden derleyin.
Son olarak MainActivity.cs dosyası içerisinde LoadApplication(new App()); demeden önce aşağıdaki kodu yapıştırın:
FirebaseApp.InitializeApp(Application.Context);
Umarım almış olduğunuz Default FirebaseApp is not initialized hatası bu yollar ile çözülmüştür.
Çocukluğumdan beri arabalara olan ilgim babam sayesinde başlamıştır. Araba manyağı seviyesinde bir ilgim var ancak bunu her ortamda dile getirmem. Teknolojiye ve bilgisayara olan ilgim kendimi tanımaya başladım başlayalı oldu. Şimdi ise kendimce kod yazabilen bir bilgisayar mühendisi olarak çalışıyorum.