Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法摆脱Crashlytics在复杂项目上引发的错误_Android_Firebase_Crashlytics_Crashlytics Android - Fatal编程技术网

Android 无法摆脱Crashlytics在复杂项目上引发的错误

Android 无法摆脱Crashlytics在复杂项目上引发的错误,android,firebase,crashlytics,crashlytics-android,Android,Firebase,Crashlytics,Crashlytics Android,一个多星期以来,我一直在尝试将Crashlytics集成到我的一个项目中。我试过以下几件事 如果我尝试在一个新创建的项目中实现,该项目不包含任何依赖项及其用法(我将在下面向您展示),Crashlytics将在Firebase遵循官方文档后自动配置 如果我试图在一个包含以下依赖项的项目中实现它,以及它们在项目中的用法,它会抛出3种错误 必须在使用singleton之前初始化结构。 当我在我的一个应用程序类中初始化结构时,在编译之后,它会显示以下错误 清单中缺少结构Api密钥,请将其添加到清单中。

一个多星期以来,我一直在尝试将Crashlytics集成到我的一个项目中。我试过以下几件事

  • 如果我尝试在一个新创建的项目中实现,该项目不包含任何依赖项及其用法(我将在下面向您展示),Crashlytics将在Firebase遵循官方文档后自动配置

  • 如果我试图在一个包含以下依赖项的项目中实现它,以及它们在项目中的用法,它会抛出3种错误

  • 必须在使用singleton之前初始化结构。
    当我在我的一个应用程序类中初始化结构时,在编译之后,它会显示以下错误

  • 清单中缺少结构Api密钥,请将其添加到清单中。 当我通过在fabric.io中从控制台复制api密钥并将其适当粘贴到manifest中来解决此问题时, 编译后显示如下错误

  • 缺少Crashlytics生成ID。
    这是一个永远不会发生的错误,即使我尝试了与之相关的各种解决方案。它永远不会消失

但需要注意的是,当我将Crashlytics添加到一个简单的项目not时,所有这些额外的东西都不是必需的,该项目包含以下依赖项及其在项目中的用法

这里是这些依赖项

implementation project(':library')
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.0.0'

implementation 'androidx.annotation:annotation:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

implementation 'com.sothree.slidinguppanel:library:3.4.0'

implementation 'de.hdodenhof:circleimageview:3.0.0'
implementation 'com.facebook.fresco:fresco:1.13.0'


implementation 'com.jakewharton:butterknife:10.1.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

/* dagger dependency for DI*/
implementation "com.google.dagger:dagger:2.23.2"
annotationProcessor "com.google.dagger:dagger-compiler:2.23.2"
compileOnly 'javax.annotation:jsr250-api:1.0'
implementation 'javax.inject:javax.inject:1'

/*Retrofit lib*/
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:converter-gson:2.6.0'

/*RxJava lib*/
implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
implementation "io.reactivex.rxjava2:rxjava:2.2.9"
implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'

/* LiveData lib*/
implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
implementation 'androidx.lifecycle:lifecycle-runtime:2.1.0'
annotationProcessor 'androidx.lifecycle:lifecycle-common-java8:2.1.0'

/* Crashlytics */
implementation 'com.google.firebase:firebase-analytics:17.2.0'
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'

/* Necessary library for handling permission callbacks easily */
implementation 'pub.devrel:easypermissions:3.0.0'

/* Better logging */
implementation 'com.jakewharton.timber:timber:4.7.1'
这也是一个由我和我的伙伴建立的项目,我不知道为什么他在这个项目中添加了另一个项目,以一个名为“库”的模块的形式,这就是为什么你可以看到
实现项目(':library')
一开始就有一行。但我也尝试过删除它,并在项目内部复制此项目的文件,而不是将其作为单独的模块添加,但这并没有改变正在发生的错误中的任何内容

如果你们中的任何人知道在两种不同的场景中Crashlytics这种奇怪行为的解决方法或解决方案,一定要回答

编辑:
这是未按要求提供密钥的清单文件

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="fibamlscan.app">

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

    <application
        android:name=".App"
        android:usesCleartextTraffic="true"
        android:icon="@android:drawable/ic_menu_today"
        android:supportsRtl="true"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        tools:ignore="AllowBackup,GoogleAppIndexingWarning"
        tools:targetApi="m">
        <activity android:name=".s2s_transfer.S2STransferScanner" />
        <activity android:name=".s2s_transfer.S2STransferActivity" />
        <activity android:name=".stock_transfer_received.StockTransferReceivedActivity" />
        <activity android:name=".damaged_goods.DamagedGoodsActivity" />
        <activity android:name=".dispatch.CreateNewDispatchActivity" />
        <activity
            android:name=".dispatch.DispatchOrder"
            android:label="@string/title_activity_dispatch_order"
            android:theme="@style/AppTheme.NoActionBar" />
        <activity
            android:name=".menu.MenuActivity"
            android:label="@string/title_activity_menu"
            android:theme="@style/AppTheme.NoActionBar" />
        <activity android:name=".ui.login.LoginActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".grn.PreviewActivity" />
        <activity
            android:name=".grn.GrnOrder"
            android:label="@string/title_activity_grn"
            android:theme="@style/AppTheme.NoActionBar" />
        <activity android:name=".dispatch.PreviewActivity" />
        <activity android:name=".metro.dispatch.PreviewActivity" />
        <activity android:name=".goodsreturn.CreateNewDispatchActivity" />
        <activity android:name=".goodsreturn.PreviewActivity" />
        <activity android:name=".goodsreturn.DispatchOrder" />
        <activity android:name=".metro.dispatch.DispatchOrder" />
        <activity android:name=".warehouseAudit.PreviewActivity" />
        <activity android:name=".audit.PreviewActivity" />
        <activity android:name=".damaged_goods.DamagedGoodsScanner" />
        <activity android:name=".warehouseAudit.WarehouseSelectionActivity" />

        <meta-data
            android:name="com.google.firebase.ml.vision.DEPENDENCIES"
            android:value="barcode" />

    </application>

</manifest>

请在没有按键的情况下发布您的清单文件。您的gradle顶部可能缺少
应用插件:'io.fabric
或GradleOk中的某些内容。这是react本机应用程序吗?不。事实并非如此。它是在Android Studio中为Android构建的。请在没有按键的情况下发布你的清单文件。你的gradle顶部可能缺少
应用插件:“io.fabric
或gradle中的某些内容。好的,将上传gradle代码。这是react本机应用程序吗?不。事实并非如此。它是在Android Studio中为Android构建的
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    defaultConfig {
        applicationId "co.behtarinternal.app"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode rootProject.ext.versionCode
        versionName "${rootProject.ext.versionName}"
        multiDexEnabled true

    }
    buildTypes {
        release {
            minifyEnabled false
            useProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

        debug {
            minifyEnabled false
//            signingConfig signingConfigs.debug
            useProguard false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}


dependencies {
    implementation project(':library')
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'com.google.android.material:material:1.0.0'

    implementation 'androidx.annotation:annotation:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

    implementation 'com.sothree.slidinguppanel:library:3.4.0'

    implementation 'de.hdodenhof:circleimageview:3.0.0'
    implementation 'com.facebook.fresco:fresco:1.13.0'


    implementation 'com.jakewharton:butterknife:10.1.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'

    /* dagger dependency for DI*/
    implementation "com.google.dagger:dagger:2.23.2"
    annotationProcessor "com.google.dagger:dagger-compiler:2.23.2"
    compileOnly 'javax.annotation:jsr250-api:1.0'
    implementation 'javax.inject:javax.inject:1'

    /*Retrofit lib*/
    implementation 'com.squareup.retrofit2:retrofit:2.6.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.6.0'

    /*RxJava lib*/
    implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
    implementation "io.reactivex.rxjava2:rxjava:2.2.9"
    implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'

    /* LiveData lib*/
    implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
    implementation 'androidx.lifecycle:lifecycle-runtime:2.1.0'
    annotationProcessor 'androidx.lifecycle:lifecycle-common-java8:2.1.0'

    /* Crashlytics */
    implementation 'com.google.firebase:firebase-core:17.2.0'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'

    /* Necessary library for handling permission callbacks easily */
    implementation 'pub.devrel:easypermissions:3.0.0'

    /* Better logging */
    implementation 'com.jakewharton.timber:timber:4.7.1'

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