Tidak menemukan kelas "com.google.firebase.provider.FirebaseInitProvider"?

156

Saya mendapatkan pengecualian di bawah saat peluncuran aplikasi.

java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.vfirst.ifbagro-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.vfirst.ifbagro-1, /vendor/lib, /system/lib]]
at android.app.ActivityThread.installProvider(ActivityThread.java:4993)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4596)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4536)
at android.app.ActivityThread.access$1300(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1353)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5214)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.provider.FirebaseInitProvider" on path: DexPathList[[zip file "/data/app/com.vfirst.ifbagro-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.vfirst.ifbagro-1, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.ActivityThread.installProvider(ActivityThread.java:4978)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4596) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4536) 
at android.app.ActivityThread.access$1300(ActivityThread.java:149) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1353) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:137) 
at android.app.ActivityThread.main(ActivityThread.java:5214) 
at java.lang.reflect.Method.invokeNative(Native Method) 

Berikut ini adalah build.gradle tingkat aplikasi

apply plugin: 'com.android.application'
apply plugin: 'android-apt' 

android {
compileSdkVersion 24
buildToolsVersion "24.0.1"

defaultConfig {
    applicationId "com.vfirst.ifbagro"
    minSdkVersion 17
    targetSdkVersion 24
    versionCode 1
    versionName "1.0"
    multiDexEnabled true
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])


compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.android.support:support-v4:24.2.1'
compile 'com.google.android.gms:play-services-gcm:9.4.0'
compile 'com.google.android.gms:play-services-location:9.4.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.google.firebase:firebase-messaging:9.4.0'
compile 'com.google.android.gms:play-services:9.4.0'
testCompile 'junit:junit:4.12'
}

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

Ini adalah build.gradle tingkat aplikasi saya

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
    jcenter()
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.2.0'
    classpath 'com.google.gms:google-services:3.0.0'
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    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
}
}

allprojects {
repositories {
    jcenter()
}
}

task clean(type: Delete) {
     delete rootProject.buildDir
}

Bagaimana cara mengatasi masalah ini?

BERHARAP
sumber
Kemungkinan duplikat stackoverflow.com/questions/37312103/…
Jay Rathod RJ
Saya sudah mencoba semua jawaban itu. tidak ada yang berhasil
BERHARAP
Tampaknya ada masalah di manifes Anda atau google-services.json Pastikan semuanya benar. Bisakah Anda memposting file manifes Anda?
Rushi M Thakker
6
Apakah Anda membuat perubahan nyata yang diperlukan untuk MultiDex: android:name="android.support.multidex.MultiDexApplication"? Jika MultiDex dikonfigurasi dengan benar, Anda akan melihat pesan logcat selama aplikasi init seperti ini: I/MultiDex: install done.
Bob Snyder
centang run instan aktifkan jika ya, nonaktifkan run instan.
Prathap Badavath

Jawaban:

145

Saya memiliki kesalahan yang sama dan saya menyelesaikannya dengan MultiDex, seperti dijelaskan pada tautan ini: https://developer.android.com/studio/build/multidex.html


Terkadang tidak cukup hanya dengan mengaktifkan MultiDex.

Jika ada kelas yang diperlukan selama startup tidak disediakan dalam file DEX utama , maka aplikasi Anda crash dengan java.lang.NoClassDefFoundError kesalahan . https://developer.android.com/studio/build/multidex#keep

FirebaseInitProvider diperlukan saat startup.

Jadi, Anda harus menentukan FirebaseInitProvider secara manual seperti yang diperlukan dalam file DEX utama.

file build.gradle

android {
    buildTypes {
        release {
            multiDexKeepFile file('multidex-config.txt')
            ...
        }
    }
}

multidex-config.txt (dalam direktori yang sama dengan file build.gradle)

com/google/firebase/provider/FirebaseInitProvider.class
johanvs
sumber
1
Anda luar biasa <3 terima kasih banyak telah menyelamatkan hari saya <3
Mohamed Atef
24
Hai pengecualian ini: Disebabkan oleh: java.lang.ClassNotFoundException: Tidak menemukan kelas "com.google.firebase.provider.FirebaseInitProvider" tidak ada hubungannya dengan mengaktifkan multidex, sebenarnya jika Anda melihat pertanyaan build.gradle multiDexEnabled diaktifkan!
Jorgesys
3
Tidak ada kesalahan ini dari multidex, ia hanya tidak menyelesaikan semua langkah, karena Anda tidak dapat melihat manifesnya atau kelas utamanya.
AMAN77
3
Ini berhasil. Saya memiliki multidex yang diaktifkan pada file gradle saya, tetapi tidak memiliki bagian Android Manifest!
krikara
3
Juga, pastikan Applicationkelas Anda diperluas dari MultiDexApplication(). Ini tidak ada dalam kasus saya.
Nelson Almendra
86

Saya juga menghadapi masalah yang sama dan akhirnya menyelesaikannya dengan menonaktifkan Instant Rundi studio android.

Pengaturan → Bangun, Eksekusi, Penempatan → Lari Instan dan hapus centang Aktifkan Lari Instan

Memperbarui:

Tidak ada opsi Instant Run yang tersedia di Android Studio 3.5+ terbaru. Seharusnya hanya berlaku untuk versi yang lebih lama.

Shylendra Madda
sumber
8
Sama untuk ku. Ini adalah penyebab masalah - bukan multidex atau jawaban lainnya.
user3562927
3
Sepertinya ini masalah dengan Android Studio 2.3. Menonaktifkan proses instan juga bekerja untuk saya, tetapi ini bukan solusi yang ideal :(
Tharaka Devinda
1
Saya mewarisi dua proyek dari perusahaan lain. Konfigurasi basis kode, manifes, dan gradasi praktis adalah harapan yang sama untuk beberapa item minor. Satu proyek membangun dan berjalan dengan baik, yang lain tidak. Nonaktifkan Instant Run off dan keduanya berjalan sekarang. Aneh. Ini menggunakan Android Studio. 2.3.
joeblow23
3
Saya menghadapi masalah yang sama dengan AS 3.1 dan emulator yang menjalankan API 26. Sebelumnya saya belum menemukan masalah dengan API 19-25. Menonaktifkan jalankan instan memang membuat saya menjalankan aplikasi. Terima kasih.
Marcin Jedynak
1
Menonaktifkan Instant Run tidak menyelesaikan masalah ini untuk saya.
Alyoshak
49

Dalam file build.gradle (Module: app), masukkan kode di bawah ini ke defaultConfig:

  defaultConfig {
        applicationId "com.***.****"
minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }

dan masukkan ke dependensi:

implementation 'com.android.support:multidex:2.0.1'

Kemudian tambahkan kode ke manifes:

<application 
    android:name="android.support.multidex.MultiDexApplication"
CodeArt
sumber
1
Saya sedang mencobanya, jika berhasil, saya akan memilih dan berkomentar
Kamil Ibadov
45

Saya memiliki masalah yang sama di (proyek pemutar YouTube) saya ... dan yang berikut memecahkan masalah untuk saya:

  1. Tambahkan kode ini ke dalam build.gradle(modul: aplikasi) Anda di dalam defaultConfing:

    defaultConfig {
        ....
        ....
        multiDexEnabled = true
    }
    
  2. Tambahkan kode ini ke dalam build.gradle(modul: aplikasi) Anda di dalam dependencies:

    dependencies {
        compile 'com.android.support:multidex:1.0.1'
        .....
        .....
    }
    
  3. Buka AndroidManifest.xmldan di dalam application:

    <application
        android:name="android.support.multidex.MultiDexApplication"
        .....
        .....
    </application>
    

    atau jika Anda memiliki kelas Aplikasi, perluas dari MultiDexApplication seperti:

    public class MyApp extends MultiDexApplication {
    .....
    

Dan akhirnya, saya pikir Anda harus mengunduh Android Support Repository , di Extras in SDK Manager .

Firas Hashash
sumber
1
Saya melakukan "MultiDex.install (ini);" tapi itu tidak berhasil. Memperluas kelas aplikasi dengan MultiDexApplication berhasil.
Safeer
33

Cukup timpa metode berikut di kelas aplikasi Anda.

public class YourApplication extends Application {

    @Override
    protected void attachBaseContext(Context context) {
        super.attachBaseContext(context);
        MultiDex.install(this);
    }
    @Override
    public void onCreate() {
        super.onCreate();
        Realm.init(this); //initialize other plugins 

    }
}
SilverSky
sumber
ditambah satu untuk tidak jatuh untuk android:namebarang - barang di Manifest
Chisko
Jawaban paling sederhana dan terbaik
kader kabore
Jika Anda menggunakan kelas Aplikasi kustom maka ini adalah jawabannya. Jawaban lain tidak akan memperbaiki masalah.
makkhay gurung
25

Saat aplikasi dan pustaka yang dirujuknya melebihi 65.536 metode, Anda menjumpai galat build yang menunjukkan aplikasi Anda telah mencapai batas arsitektur build Android

Untuk menghindari batasan ini, Anda harus mengonfigurasi aplikasi Anda untuk multidex

Jika minSdkVersion Anda diatur ke 21 atau lebih tinggi, yang perlu Anda lakukan adalah mengatur multiDexEnabled menjadi true dalam file build.gradle tingkat modul Anda, seperti yang ditunjukkan di sini:

android {
    defaultConfig {
        ...
        minSdkVersion 21 
        multiDexEnabled true
    }
    ...   
}

Lain , jika minSdkVersion Anda diatur ke 20 atau lebih rendah, maka Anda harus menggunakan pustaka dukungan multidex sebagai berikut:

1 .Modifikasi file build.gradle tingkat modul untuk mengaktifkan multidex dan tambahkan pustaka multidex sebagai ketergantungan, seperti yang ditunjukkan di sini:

android {
    defaultConfig {
        ...
        minSdkVersion 15 
        multiDexEnabled true
    }
    ...
 }

dependencies {
        implementation 'com.android.support:multidex:1.0.3'
}

2. Bergantung pada apakah Anda mengganti kelas Aplikasi, lakukan salah satu dari yang berikut:

  • Jika Anda tidak menimpa kelas Aplikasi, edit file manifes Anda untuk menetapkan android: nama dalam tag sebagai berikut:

    <application
        android:name="android.support.multidex.MultiDexApplication" >
        ...
    </application>
  • Jika Anda menimpa kelas Aplikasi, ubahlah untuk memperluas MultiDexApplication (jika mungkin) sebagai berikut:

   public class MyApplication extends MultiDexApplication { ... }
  • Jika tidak, Anda menimpa kelas Aplikasi tetapi tidak mungkin mengubah kelas dasar, maka Anda dapat mengganti metode attachBaseContext () dan memanggil MultiDex.install (ini) untuk mengaktifkan multidex:

   public class MyApplication extends SomeOtherApplication {
     @Override
     protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
     }
   }
Sokmean Pon
sumber
Mengapa aplikasi perlu memperpanjang MultiDexApplication?
Jason
1
MultiDexApplication adalah kelas pustaka yang mendukung. Ini mengimplementasikan kelas Aplikasi dan menimpa nama metode attachBaseContext untuk melakukan pekerjaan untuk pendaftaran MultiDex. Anda tidak perlu memperpanjang kelas ini jika Anda mengganti metode attachBaseContext.
Sokmean Pon
1
Ini memperbaikinya bagi saya pada tahun 2019 dengan React Native tetapi tidak memiliki 2 impor di MainApplication.java: import android.content.Context;danimport android.support.multidex.MultiDex;
xaphod
1
jawaban Anda membantu saya membuat aplikasi saya kembali kompatibel.
Alok Vishwakarma
18

Mengaktifkan multidexbukanlah solusi yang baik karena multidexmemiliki penggunaan lain di android lihat jawaban ini apa itu multidex

Solusinya adalah menonaktifkan menjalankan instan seperti yang dikatakan @Shylendra Madda

Pengaturan → Bangun, Eksekusi, Penempatan → Lari Instan dan hapus centang Aktifkan Lari Instan

Saya pikir alasan masalah ini adalah ketika menjalankan instan diaktifkan, Android Studio tidak menempatkan perpustakaan seperti firebasemenjadi apk yang dihasilkan untuk mengurangi waktu pembangunan proyek karena firebase perpustakaan dan perpustakaan lain seperti mapsdan lainnya ada di layanan bermain dan layanan bermain diinstal pada perangkat android jadi jika menjalankan instan diaktifkan tidak perlu meletakkannya di apk yang dibuat untuk membuat waktu pembuatan lebih cepat

Jadi ketika Anda mengekstrak apk dan menginstalnya di perangkat lain, Anda akan melihat pengecualian ini

Edalat Feizi
sumber
1
Ini adalah solusi sempurna
Ghanshyam Bagul
Menonaktifkan Instant Run tidak menyelesaikan masalah bagi saya.
Alyoshak
Di Android Studio 3.5.1, tidak ada item Jalankan Instan di bagian Build, Execution, Deployment.
Vergiliy
@Vergiliy Mereka menggantinya dengan menerapkan perubahan lihat posting rilis blog android-developers.googleblog.com/2019/08/... untuk info lebih lanjut dan dokumentasi developer.android.com/studio/run#apply-changes untuk info lebih lanjut tentang berlaku perubahan
Edalat Feizi
14

Saya juga menghadapi masalah yang sama setelah mencoba semua solusi. Saya menemukan solusi di bawah ini.

Jika Anda telah menerapkan aturan proguard kemudian tambahkan baris di bawah ini dalam Aturan ProGuard

-keep class com.google.firebase.provider.FirebaseInitProvider

dan itu memecahkan masalah saya.

Gunavant Patel
sumber
@gunavant patel bro tolong katakan padaku bagaimana cara menambahkan proguard please
Gowthaman M
1
@gunavant patel saya pikir ini akan menyelesaikan masalah saya ... bisakah Anda memposting kode sampel di mana untuk menjaga baris ini-keep class com.google.firebase.provider.FirebaseInitProvider
Gowthaman M
@GowthamanM Pertama, periksa Anda mengaktifkan proguard di file app / build.gradle. jika diaktifkan maka Anda menemukan file proguard-rules di app / proguard-rules.pro di file tersebut tambahkan baris di atas. Jika Anda tidak mengaktifkan proguard, maka itu tidak akan membantu Anda.
Gunavant Patel
buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }Bagaimana cara mengaktifkannya tolong beri tahu saya pak
Gowthaman M
jika Anda belum mengaktifkan proguard maka masalahnya berbeda. tapi saya tunjukkan bagaimana mengaktifkannya. tambahkan "minifyEnabled true" di rilis atau jika Anda ingin mengaktifkan untuk debug kemudian tambahkan juga dalam tipe debug.
Gunavant Patel
8

1: Buka gradle enable multiDexEnabled dan tambahkan pustaka multidex di dependensi.

android {
   ...
   defaultConfig {
      multiDexEnabled true
      ...
   }
}

dependencies {
  // add dependency 
  implementation 'com.android.support:multidex:1.0.1'
}

2: Buka file Manifest dan tulis android: name = ". MyApplication" (Nama kelas (MyApplication) adalah opsional, Anda dapat menulis apa pun yang Anda inginkan).

    <application
        android:name=".MyApplication"
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        .
        .
        .
        .
        .
    </application>

3: Ketika Anda menulis android: name = ". MyApplication" Di dalam Aplikasi di file Manifest. itu akan memberi Anda kesalahan karena Anda tidak membuat kelas MyApplication. Buat Kelas MyApplication memperpanjangnya dengan kelas "aplikasi" atau Cukup klik pada. Aplikasi saya, balon merah kecil muncul di sisi kiri dari sintaks klik di atasnya, Anda akan melihat (membuat kelas MyApplication) di menu, klik di atasnya dan Sertakan Metode di bawah ini Di dalam kelas itu.

    public class MyApplication extends Application {

    @Override 
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
    } 

Jika Anda ingin mendapatkan informasi lebih lanjut, lalu Klik Tautan ini: [ https://developer.android.com/studio/build/multidex.html]

Semoga berhasil untuk Anda.

Shahzad Afridi
sumber
7

Pertama tambahkan berikut ini ke build.gradle (Modul: app) ---->

defaultConfig{
..
multiDexEnabled true
..
}

Kemudian di file yang sama tambahkan berikut ini

dependencies{
...
compile 'com.android.support:multidex:1.0.1'
...
}

Kemudian di AndroidManifest.xml tulis yang berikut ini

<application
    android:name="android.support.multidex.MultiDexApplication"
    .....
    .....
</application>

Itu dia. Ini pasti akan berhasil

Hirak JD
sumber
6

Jika Anda menggunakan MultiDex di App Gradle Anda, maka ubah aplikasi extends untuk memperluas MultiDexApplication di kelas aplikasi Anda. Ini pasti akan berhasil

Suresh kumar
sumber
4

Saya memiliki masalah yang sama dan diselesaikan hanya menambahkan sepotong kode , Jika Anda mendapatkan masalah ini berarti Anda telah menyelesaikan semua langkah yang perlu menggunakan Firebase. Anda hanya perlu membuat kelas yang memperluas Aplikasi (kelas publik Application_CrashReport meluas Aplikasi) dan menambahkan kelas ini dalam file mainifest dan Di kelas itu cukup timpa metode di bawah ini

  @Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
}

dan tambahkan MultiDex.install (ini); dalam metode itu berarti

  @Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

Catatan : - Jangan lupa ikuti langkah-langkah di atas

Peter
sumber
2

Ini karena MultiDex.

Langkah-langkah untuk menyelesaikan:

  1. Dalam gradle-> dependencies -> (compile'com.android.support: multidex: 1.0.1 ') Tambahkan ini dalam dependensi

  2. Di kelas aplikasi proyek Anda memperluas MultiDexApplication seperti ini (kelas publik MyApplication memperluas MultiDexApplication)

  3. Jalankan dan periksa

Sukhdeep Saini
sumber
2

Ini agak terlambat bagi mereka yang datang, tetapi periksa aturan proguard Anda! Saya membuang banyak waktu untuk ini. Aturan proguard Anda bisa mengubah nama menjadi file firebase penting. Ini benar-benar hanya membuktikan masalah dalam produksi dan proses instan :)

proguard-rules.pro

-keep class com.google.firebase.** { *; }
-keep class com.firebase.** { *; }
-keep class org.apache.** { *; }
-keepnames class com.fasterxml.jackson.** { *; }
-keepnames class javax.servlet.** { *; }
-keepnames class org.ietf.jgss.** { *; }
-dontwarn org.apache.**
-dontwarn org.w3c.dom.**
Keith Aylwin
sumber
Ini berhasil, memungkinkan multidex tidak melakukan apa-apa selain membuang waktu!
Magnus W
2

Seperti disebutkan sebelumnya, ini adalah masalah dengan multidex: Anda harus menambahkan implementasi ke build.gradledan MainApplication.java. Tetapi apa yang Anda tambahkan benar-benar tergantung pada apakah Anda mendukung AndroidX atau tidak. Inilah yang Anda butuhkan untuk menyelesaikan masalah ini:

  1. Jika Anda mendukung AndroidX

Masukkan baris kode ini ke build.gradle(android / app / build.gradle) Anda:

defaultConfig {
  applicationId "com.your.application"
  versionCode 1
  versionName "1.0"
  ...
  multiDexEnabled true // <-- THIS LINE
}
...
...
dependencies {
  ...
  implementation "androidx.multidex:multidex:2.0.1" // <-- THIS LINE
  ...
}

Masukkan baris-baris ini ke MainApplication.java(android / app / src / main / java /.../ MainApplication.java) Anda:

package com.your.package;

import androidx.multidex.MultiDexApplication; // <-- THIS LINE
...
...
public class MainApplication extends MultiDexApplication { ... } // <-- THIS LINE
  1. Jika Anda tidak mendukung AndroidX

Masukkan baris kode ini ke build.gradle(android / app / build.gradle) Anda:

defaultConfig {
  applicationId "com.your.application"
  versionCode 1
  versionName "1.0"
  ...
  multiDexEnabled true // <-- THIS LINE
}
...
...
dependencies {
  ...
  implementation "com.android.support:multidex:1.0.3" // <-- THIS LINE
  ...
}

Masukkan baris-baris ini ke MainApplication.java(android / app / src / main / java /.../ MainApplication.java) Anda:

package com.your.package;

import android.support.multidex.MultiDex;; // <-- THIS LINE
...
...
public class MainApplication extends MultiDexApplication { ... } // <-- THIS LINE
E. Dn
sumber
1

Anda harus memperpanjang kelas Aplikasi Anda dengan MultiDexApplicationbukan Application.

Ali Akram
sumber
0

Masalah ini terjadi ketika saya beralih ke Android Studio 3.4 dengan plugin Android Gradle 3.4.0. yang bekerja dengan kompiler R8.

Plugin Android Gradle menyertakan file aturan ProGuard tambahan yang telah ditentukan, tetapi Anda disarankan untuk menggunakan proguard-android-optim.txt . Info lebih lanjut di sini .

buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile(
          'proguard-android-optimize.txt'),
          // List additional ProGuard rules for the given build type here. By default,
          // Android Studio creates and includes an empty rules file for you (located
          // at the root directory of each module).
          'proguard-rules.pro'
    }
}
Levon Petrosyan
sumber
0

Saya menghadapi masalah yang sama dan saya memecahkan masalah ini dengan mengubah versi fireabseStorage sama dengan versi basis data Firebase

 implementation 'com.google.firebase:firebase-core:16.0.8'
 implementation 'com.google.firebase:firebase-database:16.0.1'
 implementation 'com.google.firebase:firebase-storage:17.0.0'

untuk

 implementation 'com.google.firebase:firebase-core:16.0.8'
 implementation 'com.google.firebase:firebase-database:16.0.1'
 implementation 'com.google.firebase:firebase-storage:16.0.1'
Umer Waqas
sumber
0

Jika Anda memiliki> 20 menit perubahan, Anda perlu menggunakan versi Firebase Auth terbaru yaitu

implementasi 'com.google.firebase: firebase-auth: 18.1.0'

dan tidak perlu men-setup multi-dex jika Anda tidak benar-benar membutuhkannya.

Saya mengalami masalah ini ketika saya menggunakan 16.0.5 dari penolong Firebase tetapi bisa memperbaikinya ketika saya memperbarui ke 18.1.0.

Panah perak
sumber
0

Jika Anda menggunakan Xamarin.Forms Anda mungkin ingin memeriksa Tidak menemukan kelas "com.google.firebase.provider.FirebaseInitProvider"? karena ini menangkap masalah dengan kesalahan dex dengan google firebase saat startup (belum terselesaikan saat ini).

Saya telah kembali menggunakan tidak menyusut dalam jangka pendek dan berencana untuk menggunakan ProGuard sampai R8 lebih stabil.

Devology Ltd
sumber
-6

tambahkan path root proyek google-services.json

dependencies {
compile 'com.android.support:support-v4:25.0.1'
**compile 'com.google.firebase:firebase-ads:9.0.2'**
compile files('libs/StartAppInApp-3.5.0.jar')
compile 'com.android.support:multidex:1.0.1'
  }
apply plugin: 'com.google.gms.google-services'
Muhammad Azeem
sumber
pertimbangkan untuk menambahkan beberapa informasi ke jawaban Anda dan kode ini tidak akan membantu siapa pun
Ashu Kumar