Varsayılan FirebaseApp başlatılmadı


235

Default FirebaseApp is not initialized in this process com.example.app. Make sure to call FirebaseApp.initializeApp(Context) first.Firebase Uzaktan Yapılandırmayı yeni eklediğimiz Android uygulamamızda mesajla ilgili birkaç istisna görüyoruz .

Yığın izlemesi aşağıdaki gibidir:

Fatal Exception: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.example.app. Make sure to call FirebaseApp.initializeApp(Context) first.
       at com.google.firebase.FirebaseApp.getInstance(Unknown Source)
       at com.google.firebase.remoteconfig.FirebaseRemoteConfig.getInstance(Unknown Source)
       at com.example.app.fragments.SomeFragment.updateFooter(SourceFile:295)
       at com.example.app.fragments.SomeFragment.onCreateView(SourceFile:205)
       at android.support.v4.app.Fragment.performCreateView(SourceFile:2080)
       at android.support.v4.app.FragmentManagerImpl.moveToState(SourceFile:1108)
       at android.support.v4.app.FragmentManagerImpl.moveToState(SourceFile:1290)
       at android.support.v4.app.BackStackRecord.run(SourceFile:801)
       at android.support.v4.app.FragmentManagerImpl.execSingleAction(SourceFile:1638)
       at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(SourceFile:679)
       at android.support.v4.app.FragmentPagerAdapter.finishUpdate(SourceFile:143)
       at android.support.v4.view.ViewPager.populate(SourceFile:1240)
       at android.support.v4.view.ViewPager.populate(SourceFile:1088)
       at android.support.v4.view.ViewPager.setAdapter(SourceFile:542)
       at com.example.app.SomeActivity.onSomeAsyncCallback(SourceFile:908)
       at com.example.app.SomeDataRetriever.onAsyncHttpCompleted(SourceFile:72)
       at com.example.app.io.AsyncHttp.onPostExecute(SourceFile:141)
       at com.example.app.io.AsyncHttp.onPostExecute(SourceFile:19)
       at android.os.AsyncTask.finish(AsyncTask.java:679)
       at android.os.AsyncTask.access$500(AsyncTask.java:180)
       at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:696)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:150)
       at android.app.ActivityThread.main(ActivityThread.java:5665)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:799)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:689)

Bu sürüm 9.6.1 ve diğer Firebase bileşenlerini de kullanıyoruz:

compile 'com.google.firebase:firebase-ads:9.6.1'
compile 'com.google.firebase:firebase-config:9.6.1'
compile 'com.google.firebase:firebase-invites:9.6.1'
compile "com.google.firebase:firebase-messaging:9.6.1"

Belgelerden ve Javadoc'tan görebildiğim gibi , bizim durumumuzda herhangi bir manuel başlatma yapmak zorunda kalmamalıyız.

İstisna, Android 4-6'da çeşitli cihazlarda gerçekleşir.

Düzenle:

Bu sorunun biraz dikkat çektiğini görüyorum. Bu açıklamanın bazılarınız için ilginç olabileceğini düşünüyorum: https://firebase.googleblog.com/2016/12/how-does-firebase-initialize-on-android.html


1
"Varsayılan FirebaseApp başlatılmadı" için SO aramayı deneyin. Buna neden olabilecek birçok farklı durum vardır.
Doug Stevenson

Evet sahibim. Eşleşen koşullara sahip bir şey bulamadım, bu yüzden soruyorum. Q
Roy Solberg'de

Bu sorunu yeniden üreten minimal bir örnek üretebilir ve manifest, build.gradle ve Activity'yi gösterebiliyor musunuz?
Doug Stevenson

Firebase'i bir ContentProvider'da veya Uygulama sınıfınızda başlatıyor musunuz?
Andrew Kelly

2
Aynı problemi küçük bir oyuncu yüzdesi için de yaşıyorum. En son 10.0.1'i kullanma
Dmitry

Yanıtlar:


136

Aynı sorunu bir süre önce de yaşadım.

Başlatmadan bir Firebase örneği almaya çalışıyorsunuz. Firebase'in bir örneğini almaya çalışmadan önce lütfen bu kod satırını ekleyin:

FirebaseApp.initializeApp(this);

3
@Henrik Yalnızca ExtendedApplication.onCreate () içinde.
Roy Solberg

5
Bu benim için işe yaramadı (hala üretimde birkaç çökme). İlk faaliyet onCreate () init kodunu eklemeyi deneyeceğim.
Sébastien

77
Bu başlatmanın yanı sıra, google hizmetlerinin aşağıdaki gibi uygulanması gerektiğine dikkat etmek önemlidir:apply plugin: 'com.google.gms.google-services'
pamobo0609

2
Bu MainActivity.java'yı hangi dosyaya eklemem gerekiyor?
abhit

23
Benim için com.google.gms sürümü: google-services: 4.1.0 çöküyordu ancak com.google.gms: google-services: 4.0.1 çalıştı
Igor Čordaš

345

Kök düzeyi derlemenize eklediğinizden emin olun.

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.3.2'
    }
}

Ardından, modül düzeyinde Gradle dosyanızda (genellikle app / build.gradle), Gradle eklentisini etkinleştirmek için dosyanın altına 'eklenti uygula' satırını ekleyin:

apply plugin: 'com.android.application'

android {
  // ...
}

dependencies {
  // ...
  implementation 'com.google.firebase:firebase-core:9.6.1'
  // Getting a "Could not find" error? Make sure you have
  // the latest Google Repository in the Android SDK manager
}

// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'

As söyledi belgelere . Gradle dosyalarıma eklemek unuttum yukarıdaki bir soruda olduğu gibi istisna vardı.


2
Kontrol edin ve kontrol edin. Sadece Gradle dosyalarını açıkladığımız gibi doğruladık. Kod bir çok kullanıcı için iyi çalıştığını belirtmek gerekir .
Roy Solberg

Kütüphane sürümlerinizi karıştırıyor olabilirsiniz. Derlemeyi kullanmaya çalıştığımda aynı sorunu yaşadım, bu 'com.google.firebase:firebase-core:9.8.0' yüzden compile 'com.google.firebase:firebase-core:9.6.0'diğer kütüphanelerimle eşleşecek şekilde değiştim . Orijinal cevap Firebase SDK sürümlerini karıştırıyorsunuz. açıklandığı gibi
crakama

3
'eklentiyi uygula:' com.google.gms.google-hizmetler 'benim için çalıştı.
Rockyfish

7
Benim durumumda yardımcı olmadı. Ve sorun oyuncuların son derece küçük yüzdesini etkiliyor. Bu nedenle, büyük olasılıkla kod veya ayarlarla ilgili bir sorun değildir, ancak kullanıcının cihazlarında yüklü oyun hizmetleriyle birlikte çalışabilirlik söz konusudur :-(
Dmitry

2
teşekkürler :) Bu satırı build.gradle'a eklemeyi unutuyorum: Apply plugin: 'com.google.gms.google-services'
Richi

126

Bunun google-services:4.1.0bir sorunu var gibi görünüyor . Ya şuna düşürün

classpath 'com.google.gms:google-services:4.0.0'

veya

classpath 'com.google.gms:google-services:4.2.0'

dependencies {
    classpath 'com.android.tools.build:gradle:3.3.0-alpha08'
    classpath 'com.google.gms:google-services:4.2.0'
    /*classpath 'com.google.gms:google-services:4.1.0' <-- this was the problem */
}

Umarım yardımcı olur


9
Benim için de işe yaradı. Görünüşe göre 4.1.0
iuq

Ben de bu sorunu buldum ve ek olarak zaten Android SDK için Android SDK Build-Tools (Araçlar -> SDK Yöneticisi -> SDK Araçları) için bir güncelleme olduğunu buldum, bu güncellemeyi uygulamak classpath 'com.google.gms:google-services:4.1.0'tekrar kullanmama izin ver . YMMV.
IainCunningham

2
omg, kelimenin tam anlamıyla bu çalışmayı elde etmek için 2 hafta boyunca zaman harcadı ve tek yapmam gereken 4.1.0'dan 4.0.0'a düşürüldü?!?!?! Teşekkür ederim ton
Oliver Spryn

4
Konu izleyiciye göre 4.2.0
kuelye

Com.google.gms: google-services: 4.1.0 sürümünü om.google.gms: google-services: 4.0.0 sürümüne düşürdüm ve işe yarıyor. Günümü kurtardı.
Anil

51

Benim de sınırının altında eksikti app / build.gradle dosyası

apply plugin: 'com.google.gms.google-services'

ve bir kez temiz proje ve tekrar çalıştırın. Bu benim için sorunumu çözdü.


18
    classpath 'com.google.gms:google-services:4.1.0'

bir sorunu var. bunun yerine şunu kullanın:

    classpath 'com.google.gms:google-services:4.2.0'

15

Eklemeniz gereken ilk şey com.google.gms: google-services: xxx kök düzeyinde build.gradle

buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.3.1'
    classpath 'com.google.gms:google-services:3.0.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

}

Bundan sonra app / build.gradle adresinde 'com.google.gms.google-services' eklentisini uygulamanız gerekir.

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'

compile 'com.google.android.gms:play-services-gcm:9.8.0'
compile 'com.google.android.gms:play-services-maps:9.8.0'
compile 'com.google.android.gms:play-services-location:9.8.0'
compile 'com.google.firebase:firebase-messaging:9.8.0'
testCompile 'junit:junit:4.12'
}


apply plugin: 'com.google.gms.google-services'

ve hala sorun yaşıyorsanız eklemeniz gerekir

FirebaseApp.initializeApp(this);

aramadan hemen önce

FirebaseInstanceId.getInstance().getToken();

12

Çeşitli bağımlılıkları güncelledikten sonra derlemede bir Crashlytics hatası aldım, 'Crashlytics geçersiz bir API anahtarı buldu: null. Uygulamanın başarıyla eklendiğinden emin olmak için Crashlytics eklentisini kontrol edin! Yardım için support@fabric.io ile iletişime geçin. ' Support@fabric.io'ya tekrar tekrar girme girişimimden aldığım otomatik olmayan yanıt, sizi yönlendirir, Fabric ve Crashlytics'in ayrı takımlar olması ve bana yardımcı olamamasıydı. Crashlytics'e fazladan Fabric katmanı uygulamaktan kaçındım ve Fabric sitesinden yeni bir anahtar alamadım, hatta sitenin beni tanımasını sağlayamadım. Sadece Crashlytics kodumdan kaldırarak bu sorunu çözmek için çalışırken, 'Varsayılan FirebaseApp bu işlem com.example.app başlatılmadı var. Önce FirebaseApp.initializeApp (Bağlam) 'çökmesini çağırdığınızdan emin olun.

Asla 'FirebaseApp.initializeApp (this)' başlatma satırını eklemek zorunda kalmadım ve aslında yorum yapmamıştı. Belgeleme, yalnızca bir etkinlik için Firebase kullanılıyorsa buna ihtiyaç duymadığından bahsediyor. Eklemek bir fark yaratmadı, yine de koşma öldürme hatası var.

Yeni belirsiz hatalara neden olan şeyin güncellenmiş google-services bağımlılığı olduğu ortaya çıktı. Şimdilik, yeni bağımlılığın neden olduğu av tüfeği hatalarını düzeltmek için daha fazla gün geçirmek için zamanım yok, bu yüzden birisi çözümler bulana kadar eski sürüme sadık kalacağım. Garip başlatma çökmesinin yanı sıra, yeni sürüm Crashlytics kullanıcıları için Fabric'i zorlayabilir. Kullanıcılar da bunun için eski bağımlılık sürümüne zorlanıyor : Crashlytics geçersiz bir API anahtarı buldu: null. güncellendikten sonra com.google.gms: google-services: 4.1.0

com.google.gms:google-services:4.1.0//BAD
com.google.gms:google-services:4.0.1//GOOD

EDIT 10/17/18: Aşağıdaki bağımlılıkları tekrar güncelledikten sonra

implementation 'com.google.firebase:firebase-ads:17.0.0'
implementation 'com.google.firebase:firebase-auth:16.0.4'
implementation 'com.google.firebase:firebase-database:16.0.3'
implementation 'com.google.firebase:firebase-core:16.0.4

Ben google-hizmetler bağımlılık güncellemesi denediğim gibi, 'xxx beklenmedik bir şekilde kapatıldı' ile yükleme denemesinde hemen çöktü. Günlüğe girerken, bunu bildirime eklemem için beni yönlendiren bir bağlantı buldum

<meta-data
        android:name="com.google.android.gms.ads.APPLICATION_ID"
        android:value="ca-app-pub-xxxxxx~xxxxxx"/>

Bu yeni ve https://firebase.google.com/docs/android/setup ve burada https://developers.google.com/admob/android/interstitial buradaki kurulum ve geçiş reklamı talimatlarında belirtilmemiştir .

Uygulamam için yalnızca bir reklamla ilgili kimlik olan INTERSTITIAL_UNIT_ID ile uğraşırdım. Şimdi ikisinin üstesinden gelinmesi gerekiyor. Yukarıdaki eklemenin yanı sıra, dokümantasyon buraya ADMOB_APP_ID eklemeyi yönlendiriyor (yeni manifest kodunda reklamlarla APPLICATION_ID aynı numara)

MobileAds.initialize(this, ADMOB_APP_ID);

INTERSTITIAL_UNIT_ID ve ADMOB_APP_ID kimlikleri Google AdMob konsolunuza eklenebilir. Oyun uygulamam, ateş tabanı bağımlılıklarıyla ilgili ilk güncellememde reklam sunmayı durdurdu ve yine de reklam sunmuyor ve hata kodu 0

public void onAdFailedToLoad(int errorCode){...

Tüm bu eklenen dağınıklıktan sonra bile, başlatma hatası çökmesi olmadan google-services bağımlılığını hala güncelleyemiyorum. Bir süre için google-services: 4.0.1'de kalmayı bekliyorum.

EDIT 10/24/18: Güncellemelerden sonra reklam yayınlamama konusundaki haftalarca süren yazışmalardan sonra mobileadssdk-advisor+support@google.com adresinden:

'Cihaz günlüklerini paylaştığınız için teşekkürler. Günlüklerden, mevcut bir sorun gibi görünüyor ve bu öncelik listemizde ve ekibimiz düzeltme üzerinde çalışıyor ve bu sadece Android O ve P cihazlarında oluyor. '

Sadece O ve P cihazları mı? Bu son iki versiyon, O 25 Eylül 2017'de çıktı. Yikes.


3
Ben de bunu yaşadım. Google'ın, her güncellemeye bastıklarında uygulama derlemelerimi kırmamasını dilerim.
Patty P

Merhaba, apply plugin: 'com.google.gms.google-services'build.gradle (google-services: 4.1.0 ile) 'yi ekleyerek çalışıyorum
Nicolas Mauti

10

Bir yorumda @PSIXO tarafından belirtildiği gibi, bu, google hizmetlerinin bağımlılık sürümünde sorun olabilir. Benim için değişiyorum,

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.1.0'
    }
}

için

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.0.1'
    }
}

4.1.0 sürümü ile ilgili bir sorun olabilir. Bu konuda uzun saatler harcadığım için bunu bir cevap olarak yazmayı düşündüm.


1
evet benim için derleme sürümünü 4.0.1 olarak değiştirerek çalıştı. Bazı bağımlılık sorunu olabilir
Abraham Mathew

4
Tüm sürümleri en son sürüme (4.2.0) güncelledikten sonra, bu sorun benim için çözüldü
david72

7

Eğer kullanıyorsanız FirebaseUI , gerek içinde FirebaseApp.initializeApp(this);kodunuzda göre örnek .

Kök düzeyindeki build.gradle'ınıza eklediğinizden emin olun :

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        ...
        classpath 'com.google.gms:google-services:3.1.1'
        ...
    }
}

Ardından, modül düzeyinde Gradle dosyanızda:

dependencies {

    ...

    // 1 - Required to init Firebase automatically (THE MAGIC LINE)
    implementation "com.google.firebase:firebase-core:11.6.2"

    // 2 - FirebaseUI for Firebase Auth (Or whatever you need...)
    implementation 'com.firebaseui:firebase-ui-auth:3.1.2'
    ...
}

apply plugin: 'com.google.gms.google-services'

Bu kadar. Daha fazlasına gerek yok.


5

Build.gradle (proje düzeyinde) için Firebase Gradle buildscript bağımlılığını eklemeniz gerekir

classpath 'com.google.gms:google-services:3.1.0'

ve Gradle için Firebase eklentisini app / build.gradle dosyasına ekleyin

apply plugin: 'com.google.gms.google-services'

build.gradle will include these new dependencies:
    compile 'com.google.firebase:firebase-database:11.0.4'

Kaynak: Android Studio Yardımcısı


5

Başka bir olası çözüm - bazı betalar kullanıyorsanız farklı Android Studio'yu deneyin. Bana yardım etti. Yeni Android Studio, Firebase'i düzgün bir şekilde eklemedi. Benim durumumda 3.3

Biraz daha araştırma yaptıktan sonra, sorunun yeni Android stüdyosunun daha yeni Google Hizmetleri sürümüyle projeye başlaması ve orijinal sorun olduğu anlaşılıyor. @Ammar Bukhari'nin bu değişikliğin yardımcı olduğunu belirttiği gibi:

classpath 'com.google.gms: google-services: 4.1.0' -> sınıf yolu 'com.google.gms: google-services: 4.0.0'


4

Benim durumumda, Google Hizmetleri sınıf eklentisi values.xmldosyadan gerekli dosyayı oluşturmuyordu google-services.json. Firebase kitaplığı, kendisini başlatmak için bu oluşturulan değerler dosyasını kullanır ve değerler dosyası bulunamazsa hata vermediği anlaşılır. Değerler dosyasının aşağıdaki konumda bulunduğunu ve google-sevices.jsondosyanızdan uygun dizelerle doldurulduğunu kontrol edin :

app/build/generated/res/google-services/{build_type}/values/values.xml

ve / veya

app/build/generated/res/google-services/{flavor}/{build_type}/xml/global_tracker.xml

Daha fazla ayrıntı için bkz. Https://developers.google.com/android/guides/google-services-plugin

Benim özel durumum, çalıştırdığım Android Studio sürümü için çok gelişmiş bir gradle araçları sürümü kullanmasıydı (yani, Android Studio v3.2 ile v3.2.X-YYY sınıf araçlarını çalıştırdığınızdan emin olun).


4

Manuel olarak herhangi bir yeri aramamıza gerekFirebaseApp.initializeApp(this); yoktur . ve biz de yapmamalıyız.

Bu konuda sadece aynı sorunla karşılaştım ve beklenmedik ve garip bir çözüm buldum.

Gönderen bu cevap:

Kaldırdım tools:node="replace"ve çekicilik gibi çalışıyor.


4

Ben google-services ve firebase sürümleri ile uyumluluk sorunları olduğunu tahmin ediyorum.

Projenin build.gradle dosyasında bağımlılığı değiştirdim

'com.google.gms: google-services: 4.1.0' ile 4.2.0 arasındaki sınıf yolu

ve modülün build.gradle bağımlılıklarını şu şekilde güncelledi:

'com.google.firebase: firebase-veritabanı: 16.0.6' uygulaması

'com.google.firebase: firebase-core: 16.0.7' uygulaması

Her şey bir cazibe gibi çalışır, FirebaseApp.initializeApp (this) yazmanıza gerek yoktur;


'com.google.firebase: firebase-core: 16.0.8' e 'com.google.firebase: firebase-core: 16.0.7' sürümüne geçtikten sonra sorunumu çözüyorum
Nanda Z

3

Bunun sebebi com.google.gms: google-services sürümüdür. 4.1.0 kullanırken aynı hatayla karşılaştım. Sonra sürümü düşürdüm. Önce

classpath 'com.android.tools.build:gradle:3.3.0'
classpath 'com.google.gms:google-services:4.1.0'

Sonra

classpath 'com.android.tools.build:gradle:3.3.0'
classpath 'com.google.gms:google-services:3.2.0'

Umarım hatayı çözer.


3

Kısa bir süre önce Android Studio'nuzu com.google.gms: google-services (4.2.0'ın altında) bağımlılıklarıyla ilgili bir sorunu olan 3.3.1 olarak güncellerseniz, lütfen com.google.gms: google-services'ı 4.2.0 olarak güncelleyin.

dependencies {
    classpath 'com.android.tools.build:gradle:3.3.1'
    classpath 'com.google.gms:google-services:4.2.0'
    }

3

Bunun olmasının nedenlerinden biri, android.permission.INTERNETizinleri eklemeyi unutmak olabilir .AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" />

2

benim için com.google.gms: google-services içindeki build.gradle bağımlılıklarını

buildscript {
repositories {
    jcenter()
    mavenCentral()
    maven {
        url 'https://maven.google.com/'
        name 'Google'
    }
    google()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.3.2'
    classpath 'com.google.gms:google-services:4.2.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

0

Firebase'i manuel olarak başlatmak FirebaseApp.initializeApp(this);hatayı ortadan kaldırmasına rağmen, temel nedeni düzeltmez, ancak bazı garip sorunlar bir araya gelir gibi çözülmüş gibi görünmez

  • FCM com.google.android.c2dm.permission.RECEIVE, yalnızca GCM için izin gerektirir
  • jeton ilk bildirim gönderildikten sonra kayıtsız kalır
  • mesaj alınmadı / onMessageReceived () hiç çağrılmadı,

Daha yeni Gradle eklentisini kullanın (örneğin, Android eklentisi 2.2.3 ve Gradle 2.14.1) her şeyi düzeltti. (Elbette kurulum Firebase belgelerine göre doğru olmalıdır )


Vay, bu ilginç bir bilgi. Sorun bu kadar az ppl oluyor ile biz bunlardan herhangi birini gördüm söylemek zor. Belki tekrar kaldırmayı ve daha yeni Gradle sürümlerini kullanmayı denemeliyiz.
Roy Solberg

0

Sorunum bu yordamla çözülmedi

FirebaseApp.initializeApp(this); 

Bu yüzden başka bir şey denedim ve şimdi ateş tabanım başarıyla başlatıldı. Uygulama modülünde aşağıdakileri eklemeyi deneyin.

BuildScript{
dependencies {..
classpath : "com.google.firebase:firebase-plugins:1.1.5"
    ..}
}

dependencies {...
implementation : "com.google.firebase:firebase-perf:16.1.0"
implementation : "com.google.firebase:firebase-core:16.0.3"
..}

0

Asistan penceresini açmak için Araçlar> Firebase'i tıklayın.

Listelenen özelliklerden birini (örneğin, Analytics) genişletmek için tıklayın, ardından sağlanan eğitim bağlantısını tıklayın (örneğin, Bir Analytics etkinliğini günlüğe kaydet).

Firebase'e bağlanmak ve uygulamanıza gerekli kodu eklemek için Firebase'e Bağlan düğmesini tıklayın.

https://firebase.google.com/docs/android/setup


0

Android Studio Araçları Üzerinden Firebase Yüklendi ... Firebase ...

Kurulumu Android Studio'daki yerleşik araçlarla yaptım (Firebase'in en son dokümanlarını izleyerek). Bu temel bağımlılıkları yükledi ama ben veritabanına bağlanma girişiminde bulunduğumda bana her zaman ilk önce başlatması için çağırmak için gereken hatayı verdi:

Varsayılan FirebaseApp bu işlemde başlatılmaz. Önce FirebaseApp.initializeApp'ı (Bağlam) aradığınızdan emin olun.

Ne yaparsam yapayım bu hatayı alıyordum.

Son olarak, diğer cevaplardan birinde bir yorum gördükten sonra notumda aşağıdakileri 4.1.0 sürümünden değiştirdim:

classpath 'com.google.gms:google-services:4.0.1'

Bunu yaptığımda sonunda bana yardımcı olan bir hata gördüm:

Google-services.json dosyası eksik. Google Hizmetleri Eklentisi onsuz çalışamaz. Aranan Konum: C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ src \ nullnull \ debug \ google-services.json
C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ src \ debug \ nullnull \ google-services.json
C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ src \ nullnull \ google-services.json
C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ src \ debug \ google- services.json
C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ src \ nullnullDebug \ google-services.json
C: \ Kullanıcılar \% kullanıcı adı% \ AndroidStudioProjects \ TxtFwd \ app \ google-services.json

İşte sorun bu. 4.1.0 sürümü bazı nedenlerden dolayı bu derleme hatası vermiyor gibi görünüyor - bir google-services.json dosyanızın eksik olduğunu belirtmiyor. Uygulamamda google-services.json dosyası yok, bu yüzden dışarı çıktım ve ekledim.

Ancak bu, varolan gerçek zamanlı bir firsbase veritabanını kullanan bir yükseltme olduğundan, geçmişte bu dosyayı oluşturmak zorunda kalmamıştım. Firebase'e gittim ve ürettim ve ekledim ve sorunu düzeltti.

4.1.0 olarak değiştirildi

Tüm bunları keşfettikten sonra sınıf yolu değişkenini geri (4.1.0'a) değiştirdim ve yeniden oluşturdum ve yeniden başlatılmadığı hatayla tekrar çöktü.

Kök Sorunları

  • 4.1.0 ile derleme, ön derleme üzerine geçerli bir hata vermez, bu yüzden ne olduğunu bilmiyor olabilirsiniz.
  • 4.1.0'a karşı çalıştırılması başlatma hatasına neden olur.


0

değiştirme

classpath 'com.google.gms:google-services:4.1.0'

için

classpath 'com.google.gms:google-services:4.0.1'

Benim için çalışıyor


Aşağıdaki en son sürümleri kullanmak sorunu çözmeme yardımcı oldu. İndirime gerek yok :) classpath 'com.android.tools.build:gradle:3.4.2' classpath 'com.google.gms: google-services: 4.3.0'
garnet

0

@ Gabriel Lidenor cevabını takip ederek, uygulamayı bağlamla başlatmak benim durumumda işe yaramıyor. Google-service.json olmadan firebase-uygulaması oluşturmaya çalışıyorsanız ne olur? Yani herhangi bir sayıda firebase uygulamasını başlatmadan önce ilk olarak;

FirebaseOptions options = new FirebaseOptions.Builder().setApplicationId("APP_ID")
                    .setGcmSenderId("SENDER_ID").build();
FirebaseApp.initializeApp(context, options, "[DEFAULT]");

-1

Firebase'i Application Class'ın onCreate işlevinde başlatmamız gerekecek.

 package com.rocks.music.videoplayer;

 import android.app.Application;
 import android.content.Context;

 import com.google.firebase.FirebaseApp;


/**
* Created by ashish123 on 22/8/15.
  */
 public class MyApplication extends Application {

private static MyApplication mInstance;

@Override
public void onCreate() {
    super.onCreate();
    mInstance = this;
    try {
        FirebaseApp.initializeApp(this);
    }
    catch (Exception e) {
    }
}

public static Context getInstance() {
    return mInstance;
}

}

Manifest dosyasındaki kod: -

  <application
    android:name="com.rocks.music.videoplayer.MyApplication"
    android:allowBackup="true"
    android:icon="@drawable/app_icon"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

-1

Sebep ve çözüm: Bu, çoğu zaman alacağınız yaygın hatadır. Sebep: Projenizi Firebase ile entegre ettiğinizde, bağımlılıklar eklenir

implementation 'com.google.firebase:firebase-auth:16.1.0'
implementation 'com.google.android.gms:play-services-auth:16.0.1'

ve sınıf yolu

classpath 'com.google.gms:google-services:4.1.0'

sadece güncellemelisin

Bu şekilde güncelleme yapabilirsiniz

sınıfına git ve bunu yap

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.