Vous ne devriez pas utiliser e.printStackTrace()
directement de toute façon — faisant envoie les informations dans le journal Android sans afficher quelle application (balise log) il est venu.
Comme d'autres l'ont mentionné, continuez à attraper le Exception
en question, mais utilisez l'une des méthodes android.util.Log
pour effectuer la journalisation. Vous pouvez vous connecter seulement le message, mais pas la trace de la pile, ou utiliser la journalisation détaillée pour la trace de la pile:
try {
Object foo = null;
foo.toString();
} catch (NullPointerException ex) {
Log.w(LOG_TAG, "Foo didn't work: "+ ex.getMessage());
Log.d(LOG_TAG, Util.stackTraceWriter(ex));
}
Vous devez enlever DEBUG
ou VERBOSE
messages du journal de votre production construit. Le plus simple est de use ProGuard to remove Log.[dv]
calls à partir de votre code.
il semble que 'Util.stackTraceWriter' ne soit plus là. Quoi qu'il en soit, il y a cette ['Log.getStackTraceString'] (http://developer.android.com/reference/android/util/Log.html#getStackTraceString%28java.lang.Throwable%29) – superjos
Vous n'êtes pas autorisé à utiliser les journaux lorsque vous vouloir publier l'application! –
@SoheilSetayeshi Qu'est-ce qui vous fait penser à ça? Vérifiez les journaux de votre téléphone; vous verrez beaucoup de journaux provenant d'applications installées. –