首页 文章

Firebase引发了抛出ConcurrentModificationException

提问于
浏览
0

firebase在以下行中抛出 ConcurrentModificationException

FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener()

使用gradle实现

implementation 'com.google.firebase:firebase-core:16.0.6'

完整的堆栈跟踪是

Caused by java.util.ConcurrentModificationException
       at android.support.v4.util.SimpleArrayMap.put(SimpleArrayMap.java:461)
       at com.google.android.gms.common.api.internal.zzc.addCallback(Unknown Source:20)
       at com.google.android.gms.tasks.zzu$zza.(Unknown Source:9)
       at com.google.android.gms.tasks.zzu$zza.zza(Unknown Source:4)
       at com.google.android.gms.tasks.zzu.addOnSuccessListener(Unknown Source:36)
       at com.<package_name>.Activity.MainActivity.onCreate(MainActivity.java:158)
       at android.app.Activity.performCreate(Activity.java:6982)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2811)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2933)
       at android.app.ActivityThread.-wrap11(Unknown Source)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1612)
       at android.os.Handler.dispatchMessage(Handler.java:105)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6710)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:770)

1 回答

  • 0

    如果您希望将Firebase库集成到自己的项目中,则需要执行一些基本任务来准备Android Studio项目 . 您可能已将此操作作为向应用添加Firebase的一部分 .

    首先,将规则添加到根级build.gradle文件中,以包含google-services插件和Google的Maven存储库:

    buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.2.0' // google-services plugin
    }
    }
    
    allprojects {
    // ...
    repositories {
        // ...
        google() // Google's Maven repository
    }
    }
    

    然后,在您的模块Gradle文件(通常是app / build.gradle)中,添加文件底部的apply plugin行以启用Gradle插件:

    apply plugin: 'com.android.application'
    
    android {
    // ...
    }
    
    dependencies {
     // ...
    implementation 'com.google.firebase:firebase-core:16.0.6'
    
    // Getting a "Could not find" error? Make sure you have
    // added the Google maven respository to your root build.gradle
    }
    
    // ADD THIS AT THE BOTTOM
    apply plugin: 'com.google.gms.google-services'
    

相关问题