with new kit android crashlytics fabric-twitter

android - new - Crashlytics Fabric: Error al ejecutar la tarea



firebase crashlytics (7)

He tenido un problema y no sé cómo solucionarlo.

Mi proyecto usa crashlytics, pero siempre se bloquea y no se envía el informe. Tengo una TimeoutException:

08-25 03:04:31.876 2856-2856/connectivit.app E/Fabric﹕ Failed to execute task. java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:176) at com.crashlytics.android.core.CrashlyticsExecutorServiceWrapper.executeSyncLoggingException(CrashlyticsExecutorServiceWrapper.java:44) at com.crashlytics.android.core.CrashlyticsUncaughtExceptionHandler.uncaughtException(CrashlyticsUncaughtExceptionHandler.java:275) at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693) at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690) --------- beginning of crash 08-25 03:04:31.876 2856-2856/connectivit.app E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: connectivit.app, PID: 2856 java.lang.RuntimeException: Unable to start activity ComponentInfo{connectivit.app/connectivit.app.Activity.Main.MainActivity}: java.lang.RuntimeException: This is a crash at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) at android.app.ActivityThread.access$800(ActivityThread.java:144) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) Caused by: java.lang.RuntimeException: This is a crash at connectivit.app.Activity.Main.MainActivity.initTabs(MainActivity.java:117) at connectivit.app.Activity.Main.MainActivity.onCreate(MainActivity.java:57) at android.app.Activity.performCreate(Activity.java:5933) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) at android.app.ActivityThread.access$800(ActivityThread.java:144) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)

EDITAR

Mi archivo build.gradle:

buildscript { repositories { maven { url ''https://maven.fabric.io/public'' } } dependencies { classpath ''io.fabric.tools:gradle:1.+'' } } apply plugin: ''com.android.application'' apply plugin: ''io.fabric'' repositories { maven { url "https://jitpack.io" } maven { url ''https://maven.fabric.io/public'' } } android { signingConfigs { release { keyAlias ''android.keystore'' storeFile file(''/Users/jordan/android.keystore.jks'') storePassword "" keyPassword "" } config { keyAlias ''androiddebugkey'' keyPassword ''android'' storeFile file(''/Users/jordan/.android/debug.keystore'') storePassword ''android'' } } compileSdkVersion 23 buildToolsVersion ''23'' defaultConfig { applicationId “com.test" minSdkVersion 14 targetSdkVersion 23 versionCode 12 versionName ''1'' // Enabling multidex support. multiDexEnabled true } buildTypes { debug { versionNameSuffix "-DEBUG" } release { minifyEnabled true zipAlignEnabled true proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' signingConfig signingConfigs.release } } packagingOptions { exclude ''META-INF/ASL2.0'' exclude ''META-INF/LICENSE'' exclude ''META-INF/NOTICE'' } lintOptions { // set to true to turn off analysis progress reporting by lint quiet false // if true, stop the gradle build if errors are found abortOnError false // if true, only report errors ignoreWarnings true } productFlavors { } } dependencies { //--- Android compile ''com.android.support:design:23.0.0'' compile ''com.android.support:appcompat-v7:23.0.0'' compile ''com.android.support:multidex:1.0.0'' //--- Fabric compile(''com.crashlytics.sdk.android:crashlytics:2.4.0@aar'') { transitive = true; } }

Inicialización de Crashlytics:

public class MyApplication extends MultiDexApplication { @Override public void onCreate() { super.onCreate(); Fabric.with(this, new Crashlytics()); if (!BuildConfig.DEBUG) { Log.d("Ez", "Release mode. Crashlytics enable"); //Fabric.with(this, new Crashlytics()); } else { Log.d("Ez", "Debug mode. Crashlytics disable"); } throw new RuntimeException("This is a crash"); } }


Verifique su archivo AndroidManifest.xml , contiene cualquier proveedor duplicado o escrito más de dos veces al día.

Porque, este problema se produjo en un dispositivo específico, antes de algún tiempo me enfrenté a un problema y esta es mi solución final.


Para cualquier persona que todavía esté luchando con esto, lo resolví instalando el plugin de la tela de Android Studio directamente a través de Settings-> Plugins android studio y dejé que el plugin editara mi código en gradle. Puedes verlo aquí: https://www.youtube.com/watch?v=Qvqr6vGzxIs


Porque la aplicación puede fallar antes de que Fabric pueda conectarse a su servicio. Solución: simplemente elimine el código de Excepción de lanzamiento y realice una instalación nueva.


Según la guía de soporte de Crashlytics:

Asegúrese de que nuestra línea de SDK sea después de todos los otros SDK de terceros

Así que intenta configurar Fabric.with(this, new Crashlytics()); después de todo su otro sdk relacionado con la inicialización, en su caso. Si no hay otra inicialización de SDK allí, intente configurarlo después de la inicialización de BuildConfig.

public class MyApplication extends MultiDexApplication { @Override public void onCreate() { super.onCreate(); if (!BuildConfig.DEBUG) { Log.d("Ez", "Release mode. Crashlytics enable"); //Fabric.with(this, new Crashlytics()); } else { Log.d("Ez", "Debug mode. Crashlytics disable"); } Fabric.with(this, new Crashlytics()); throw new RuntimeException("This is a crash"); } }


Tal vez tengas otra biblioteca que cause este error. Intenta eliminarlo,

por ejemplo puedes probar

maven { url "https://jitpack.io" }


También tengo este problema. Lo resolví simplemente haciendo Android Studio -> File -> Invalidate Caches / Restart -> Invalidate and restart


TimeoutException la TimeoutException agregando lo siguiente a mi build.gradle

ext.enableCrashlytics = true

O si ya tienes varias extensiones:

ext { ... enableCrashlytics = true }