0

Я использую crashytics от Fabric.io в своем приложении.Crashlytics - не удается получить отчеты о сбоях, когда приложение выходит из строя, а не подключено к студии Android.

Вот как я инициализирован это в моем MainActivity.java в самый последний из onCreate() метода:

Fabric.with(this, new Crashlytics()); 

Вот build.gradle (Project: abc) файл:

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

buildscript { 
    repositories { 
     mavenCentral() 
     maven { url 'https://maven.fabric.io/public'} 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.2.3' 
     classpath 'com.google.gms:google-services:3.0.0' 
     classpath 'io.fabric.tools:gradle:1.+' 
     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
     maven { url "https://dl.bintray.com/hani-momanii/maven"} 
    } 
} 

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

Вот build.gradle (Module: app) файл:

apply plugin: 'com.android.application' 

apply plugin: 'io.fabric' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.0" 

    defaultConfig { 
     applicationId "com.xxx.abc" 
     minSdkVersion 16 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     multiDexEnabled true 
     vectorDrawables.useSupportLibrary = true 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    repositories { 
     mavenCentral() 
     maven { 
      url "https://jitpack.io" 
     } 
     maven { url 'https://maven.fabric.io/public' } 
    } 
    dexOptions { 
     javaMaxHeapSize "4g" 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
     transitive = true; 
    } 
} 

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

и

<meta-data android:name="io.fabric.ApiKey" android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxx" /> определен в AndroidManifest.xml между <application> тегами.

Проблема, что я не могу получить отчеты о сбоях всякий раз, когда приложение выходит из строя, не подключившись к Android Studio, хотя я получаю отчеты, когда приложение падает при подключении к нему.

Почему это происходит, и Как я могу получать отчеты об авариях каждый раз, когда приложение выходит из строя, подключено ли оно к Android Studio или нет?

+0

ли перезапуска приложения после сбоев приложений в любом случае, во-вторых, мгновенный запуск включен или нет. Если да, попробуйте удалить и установить снова с функцией мгновенного запуска. –

+0

@AnuragSingh как функция мгновенного запуска может повлиять? –

+0

Возможно, так как вы впервые создали ткань, вы были подключены к студии Android. Но, как вы отключаете его, ваша сборка может не иметь последних изменений. –

ответ

2

Удалить из Activity и положить внутрь Применение класса

public class MyApplication extends Application { 

@Override 
public void onCreate() { 
    super.onCreate(); 
    Fabric.with(this, new Crashlytics()); 

} 

Не забудьте добавить имя в Применение тег из manifest.xml

<application 
    ... 
    android:name=".MyApplication" 
    ... 
</application> 
+0

где этот класс приложения? –

+0

вам нужно создать, как вы создали активность! –

+0

Должен ли я удалить его из MainActivity? –

Смежные вопросы