Désactiver Crashlytics au moment de l'exécution
// Set up Crashlytics, disabled for debug builds
Crashlytics crashlyticsKit = new Crashlytics.Builder()
.core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
.build();
Fabric.with(this, crashlyticsKit);
Ex
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set up Crashlytics, disabled for debug builds
Crashlytics crashlyticsKit = new Crashlytics.Builder()
.core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
.build();
Fabric.with(this, crashlyticsKit);
setContentView(R.layout.activity_main);
}
Plus de
boolean Agrees = value;
if(Agrees)
{
Fabric.with(this,new Crashlytics());
}
else
{
CrashlyticsCore core = new CrashlyticsCore.Builder().disabled(true).build();
Fabric.with(this, new Crashlytics.Builder().core(core).build());
throw new RuntimeException("why doesn't this show up in Firebase Crashlytics?");
}
Edit 2
Ref : Crashlytics de Fabric avec Firebase ne peut pas être désactivé pour les constructions DEBUG
En Documentation Firebase Crashlytics explique qu'une fois que le reporting est activé dans une session d'application, il ne peut pas être désactivé.
Par défaut, les rapports Crashlytics sont activés dans un fichier de type ContentProvider
nommé CrashlyticsInitProvider qui s'exécute avant votre Application
est créée. CrashlyticsInitProvider active ou désactive le rapport basé sur la valeur des méta-données firebase_crashlytics_collection_enabled
qui, par défaut, est vrai.
Si vous souhaitez désactiver le reporting, il est essentiel que les métadonnées du manifeste soient présentes et définies sur false :
<meta-data
android:name="firebase_crashlytics_collection_enabled"
android:value="false" />
Regardez dans le logcat pendant l'initialisation de l'application pour trouver le message :
CrashlyticsInitProvider: CrashlyticsInitProvider initialization successful
Si le message est présent, firebase_crashlytics_collection_enabled
est vrai. Si le message n'est pas présent, vous avez réussi à paramétrer les métadonnées pour désactiver le rapport d'accident.
Si les méta-données sont absentes ou définies à true, vous ne pouvez pas désactiver le rapport dans votre code en utilisant un appel à Fabric.with(...)
.
Dans un commentaire à une autre réponse, vous indiquez que vous avez essayé de désactiver le reporting en utilisant les méta-données sans y parvenir. Vérifiez qu'il n'y a pas de faute de frappe et assurez-vous que la déclaration est correctement placée dans le champ <application>
élément. Dans mes tests, je suis capable de désactiver le reporting en utilisant les méta-données et de l'activer au moment de l'exécution.