【问题标题】:How to fix internal error in Firestore crash如何修复 Firestore 崩溃中的内部错误
【发布时间】:2019-09-04 14:45:43
【问题描述】:

我的应用 (HouseLog) 正在生产中,我遇到了仅在 Android 5 和 6 上发生的 Firebase Firestore 崩溃。崩溃很好地解释了正在发生的事情,但我不知道如何实际修复它.我假设这是 Gradle 文件的问题。崩溃发生在线FirebaseFirestore.getInstance().collection("Users")

Fatal Exception: java.lang.RuntimeException: Internal error in Firestore (19.0.0).
       at com.google.firebase.firestore.util.AsyncQueue.lambda$panic$5(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$Lambda$5.run(AsyncQueue.java)
       at android.os.Handler.handleCallback + 742(Handler.java:742)
       at android.os.Handler.dispatchMessage + 95(Handler.java:95)
       at android.os.Looper.loop + 157(Looper.java:157)
       at android.app.ActivityThread.main + 5601(ActivityThread.java:5601)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run + 774(ZygoteInit.java:774)
       at com.android.internal.os.ZygoteInit.main + 652(ZygoteInit.java:652)
Caused by java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/firebase/firestore/c/Ja;
       at com.google.firebase.firestore.local.SQLiteSchema.ensureSequenceNumbers(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLiteSchema.addSequenceNumber(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLiteSchema.addSequenceNumber(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLitePersistence$OpenHelper.onCreate(SQLitePersistence.java)
       at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked + 251(SQLiteOpenHelper.java:251)
       at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase + 163(SQLiteOpenHelper.java:163)
       at com.google.firebase.firestore.local.SQLitePersistence.start(SQLitePersistence.java)
       at com.google.firebase.firestore.core.FirestoreClient.getDocumentsFromLocalCache(FirestoreClient.java)
       at com.google.firebase.firestore.core.FirestoreClient.getDocumentsFromLocalCache(FirestoreClient.java)
       at com.google.firebase.firestore.core.FirestoreClient$$Lambda$2.run(FirestoreClient.java)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$4(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$Lambda$4.call(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$3(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$Lambda$3.run(AsyncQueue.java)
       at java.util.concurrent.Executors$RunnableAdapter.call + 423(Executors.java:423)
       at java.util.concurrent.FutureTask.run + 237(FutureTask.java:237)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201 + 154(ScheduledThreadPoolExecutor.java:154)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run + 269(ScheduledThreadPoolExecutor.java:269)
       at java.util.concurrent.ThreadPoolExecutor.runWorker + 1113(ThreadPoolExecutor.java:1113)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run + 588(ThreadPoolExecutor.java:588)
       at com.google.firebase.firestore.util.AsyncQueue$DelayedStartFactory.run(AsyncQueue.java)
       at java.lang.Thread.run + 818(Thread.java:818)
Caused by java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.firestore.c.Ja" on path: DexPathList[[zip file "/data/app/chenige.chkchk.wairz-1/base.apk", zip file "/data/app/chenige.chkchk.wairz-1/split_config.xhdpi.apk"],nativeLibraryDirectories=[/data/app/chenige.chkchk.wairz-1/lib/arm64, /vendor/lib64, /system/lib64]]
       at dalvik.system.BaseDexClassLoader.findClass + 56(BaseDexClassLoader.java:56)
       at java.lang.ClassLoader.loadClass + 511(ClassLoader.java:511)
       at java.lang.ClassLoader.loadClass + 469(ClassLoader.java:469)
       at com.google.firebase.firestore.local.SQLiteSchema.ensureSequenceNumbers(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLiteSchema.addSequenceNumber(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLiteSchema.addSequenceNumber(SQLiteSchema.java)
       at com.google.firebase.firestore.local.SQLitePersistence$OpenHelper.onCreate(SQLitePersistence.java)
       at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked + 251(SQLiteOpenHelper.java:251)
       at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase + 163(SQLiteOpenHelper.java:163)
       at com.google.firebase.firestore.local.SQLitePersistence.start(SQLitePersistence.java)
       at com.google.firebase.firestore.core.FirestoreClient.getDocumentsFromLocalCache(FirestoreClient.java)
       at com.google.firebase.firestore.core.FirestoreClient.getDocumentsFromLocalCache(FirestoreClient.java)
       at com.google.firebase.firestore.core.FirestoreClient$$Lambda$2.run(FirestoreClient.java)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$4(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$Lambda$4.call(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue.lambda$enqueue$3(AsyncQueue.java)
       at com.google.firebase.firestore.util.AsyncQueue$$Lambda$3.run(AsyncQueue.java)
       at java.util.concurrent.Executors$RunnableAdapter.call + 423(Executors.java:423)
       at java.util.concurrent.FutureTask.run + 237(FutureTask.java:237)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201 + 154(ScheduledThreadPoolExecutor.java:154)
       at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run + 269(ScheduledThreadPoolExecutor.java:269)
       at java.util.concurrent.ThreadPoolExecutor.runWorker + 1113(ThreadPoolExecutor.java:1113)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run + 588(ThreadPoolExecutor.java:588)
       at com.google.firebase.firestore.util.AsyncQueue$DelayedStartFactory.run(AsyncQueue.java)
       at java.lang.Thread.run + 818(Thread.java:818)

这是我应用的 build.gradle。

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'io.fabric'

android {
compileSdkVersion 28
    defaultConfig {
        applicationId "chenige.chkchk.wairz"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 22
        versionName "1.4.1"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        signingConfig signingConfigs.releaseconfig
        resConfigs "en"
    }
    buildTypes {
        release {
            minifyEnabled true
            debuggable false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
    compileOptions {
        sourceCompatibility = '1.8'
        targetCompatibility = '1.8'
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'com.google.android.material:material:1.0.0'
    // FirebaseUI for Firebase Realtime Database
    implementation 'com.firebaseui:firebase-ui-database:5.1.0'
    // FirebaseUI for Cloud Firestore
    implementation 'com.firebaseui:firebase-ui-firestore:5.1.0'
    // FirebaseUI for Firebase Auth
    implementation 'com.firebaseui:firebase-ui-auth:5.1.0'
    // FirebaseUI for Cloud Storage
    implementation 'com.firebaseui:firebase-ui-storage:5.1.0'
    implementation 'com.google.firebase:firebase-analytics:17.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.gms:google-services:4.3.1'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
    implementation 'com.github.AppIntro:AppIntro:5.1.0'
    testImplementation 'junit:junit:4.12'
    implementation 'com.github.bumptech.glide:glide:4.8.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.7.1'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'uk.co.markormesher:android-fab:2.2.2'
    implementation 'de.hdodenhof:circleimageview:2.2.0'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.github.faranjit:currency-edittext:1.0.1'
    implementation 'com.makeramen:roundedimageview:2.3.0'
    implementation 'com.opencsv:opencsv:4.5'
    implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.10.0'
    implementation 'com.elconfidencial.bubbleshowcase:bubbleshowcase:1.3.1'
    implementation "com.leinardi.android:speed-dial:3.0.0"
    implementation 'com.codemybrainsout.rating:ratingdialog:1.0.8'

}

configurations {
    all {
        exclude module: 'commons-logging'
    }
}

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

repositories {
    mavenCentral()
}

这是我项目的 build.gradle

buildscript {
    ext.kotlin_version = '1.3.41'

    repositories {
        google()
        jcenter()

        maven {
            url 'https://maven.fabric.io/public'
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.2'
        // Add dependency
        classpath 'io.fabric.tools:gradle:1.30.0'  // Crashlytics plugin
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:4.3.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://jitpack.io' }
    }
}

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

【问题讨论】:

标签: android firebase google-cloud-firestore crash


【解决方案1】:

您可以尝试修复此错误,更新 gradle.properties 中的 android.enableR8=false。您需要添加此行,因为默认值 true

【讨论】:

    【解决方案2】:

    你用新的!!! classpath 'com.google.gms:google-services:4.3.2'

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-25
      • 1970-01-01
      • 2019-10-07
      • 2018-01-18
      • 1970-01-01
      • 2022-01-01
      • 1970-01-01
      • 2021-11-27
      相关资源
      最近更新 更多