J'ai un projet Android Studio qui comprend plusieurs bibliothèques partagées natives.
J'ai suivi les étapes documentées ici pour intégrer le support NDK de Crashlytics et télécharger les symboles vers Fabric : https://fabric.io/downloads/gradle/ndk
Les crashs sont signalés avec succès :
D/CrashlyticsCore: Checking for crash reports...
D/CrashlyticsCore: Attempting to send 1 report(s)
D/CrashlyticsCore: Sending report to: ...
D/CrashlyticsCore: Result was: 202
I/CrashlyticsCore: Crashlytics report upload complete:
et je les vois dans la console Fabric Crashlytics.
Cependant, je constate les problèmes suivants dans les backtraces :
- Il y a des cadres manquants. Souvent, une seule trame affiche les symboles de mes bibliothèques natives (généralement la trame qui a provoqué le crash).
- Les cadres ne semblent pas toujours avoir un sens. Par exemple, entre les appels directs de fonctions, il y a des cadres "fantômes" sans symboles.
- Symboles manquants dans libc.so
Voici un exemple :
#0
Crashed: Thread
SIGABRT 0x00000000000008b1
Crashed: Thread
0 libc.so 0xf5465d66 (Missing)
1 libc.so 0xf54a4665 (Missing)
2 libc.so 0xf5465fe1 (Missing)
3 libMyLibrary.so 0xd9e79622 (Missing)
4 libMyLibrary.so 0xd9c23d83 Java_com_xxxxxxxx (MySource.cpp:109)
5 (Missing) 0x705e92cc (Missing)
6 (Missing) 0xdb84aa3a (Missing)
7 (Missing) 0xf4645d9e (Missing)
8 libart.so 0xf37eacb7 (Missing)
9 (Missing) 0x136b8b36 (Missing)
10 (Missing) 0xdb84aa32 (Missing)
<frames omitted for brevity, all with missing symbols>
62 libart.so 0xf3a13ece (Missing)
63 libart.so 0xf3800caf (Missing)
64 (Missing) 0x13001756 (Missing)
Il manque des symboles dans le cadre 3. De même, il aurait dû y avoir d'autres images dans ma librairie native après l'image 4, mais il manque des détails.
J'utilise crashlytics:2.9.8 et crashlytics-ndk:2.0.5.
Possiblement lié à Backtrace de pile NDK erronée après la mise à niveau vers Crashlytics NDK 2.+
Des suggestions ? Y a-t-il un problème avec crashlytics-ndk-2.x ?