Crashlytics не генерирует символы для двоичных файлов в библиотечных модулях
Я включил поддержку crashlytics ndk для моего проекта. Но когда номера строк отсутствуют в отчете о сбоях. Я указал androidNdkOut
а также androidNdkLibsOut
в двоичные файлы в проекте библиотеки и загруженные символы crashlyticsUploadSymbols{Variant}
Я заметил, что в **/build/fabric/{variant}/csyms
папка. Я думаю, это означает, что символы не генерируются? Как я могу настроить crashlytics для генерации символов для двоичных файлов библиотеки?
crashlytics {
enableNdk true
androidNdkOut "../library/jni/debug"
androidNdkLibsOut "../library/jni/release"
}
По крашлитикам:
Crashed: pointment.debug|
0 libjingle_peerconnection_so.so 0x98585ede Java_org_webrtc_PeerConnectionFactory_nativeCreateVideoTrack
1 base.odex 0xa0dbac49 oatexec
2 base.odex 0xa0dbc1b5 oatexec
3 base.odex 0xa0a5133d oatexec
4 base.odex 0xa0a5448f oatexec
5 base.odex 0xa0a4fd2b oatexec
6 base.odex 0xa0a47423 oatexec
7 system@framework@boot.oat 0x72305c67 oatexec
В logcat:
11-03 09:52:02.865 199-199/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
11-03 09:52:02.890 199-199/? A/DEBUG: r0 00000000 r1 ffffffff r2 9564d0c0 r3 ffffffff
11-03 09:52:02.890 199-199/? A/DEBUG: r4 00000000 r5 00000000 r6 13fb88d0 r7 98a83458
11-03 09:52:02.890 199-199/? A/DEBUG: r8 9564db40 r9 96ead0e0 sl 132b6ac0 fp 20000000
11-03 09:52:02.890 199-199/? A/DEBUG: ip 98585ebd sp 98a83430 lr 98585ecf pc 98585ede cpsr 600d0030
11-03 09:52:02.910 199-199/? A/DEBUG: backtrace:
11-03 09:52:02.910 199-199/? A/DEBUG: #00 pc 00460ede /data/app/**-2/lib/arm/libjingle_peerconnection_so.so (Java_org_webrtc_PeerConnectionFactory_nativeCreateVideoTrack+33)
11-03 09:52:02.911 199-199/? A/DEBUG: #01 pc 01dbbc49 /data/app/**-2/oat/arm/base.odex (long org.webrtc.PeerConnectionFactory.nativeCreateVideoTrack(long, java.lang.String, long)+132)
11-03 09:52:02.911 199-199/? A/DEBUG: #02 pc 01dbd1b5 /data/app/**-2/oat/arm/base.odex (org.webrtc.VideoTrack org.webrtc.PeerConnectionFactory.createVideoTrack(java.lang.String, org.webrtc.VideoSource)+120)
11-03 09:52:02.911 199-199/? A/DEBUG: #03 pc 01a5233d /data/app/**-2/oat/arm/base.odex (org.webrtc.VideoTrack **.PeerConnectionClient.createLocalVideoTrack(java.lang.String, org.webrtc.VideoCapturer)+256)
11-03 09:52:02.911 199-199/? A/DEBUG: #04 pc 01a5548f /data/app/**-2/oat/arm/base.odex (void **.PeerConnectionClient.createPeerConnectionInternal(org.webrtc.EglBase$Context)+930)
11-03 09:52:02.911 199-199/? A/DEBUG: #05 pc 01a50d2b /data/app/**-2/oat/arm/base.odex (void **.PeerConnectionClient.access$200(**.PeerConnectionClient, org.webrtc.EglBase$Context)+54)
11-03 09:52:02.911 199-199/? A/DEBUG: #06 pc 01a48423 /data/app/**.debug-2/oat/arm/base.odex (void **.PeerConnectionClient$2.run()+150)
11-03 09:52:02.911 199-199/? A/DEBUG: #07 pc 72305c67 /data/dalvik-cache/arm/system@framework@boot.oat
11-03 09:52:04.858 199-199/? A/DEBUG: Tombstone written to: /data/tombstones/tombstone_02
РЕДАКТИРОВАТЬ 1:
Просто отрежьте последнюю часть после упаковки сборки для ./gradlew clean --info crashlyticsUploadSymbolsDebug
, И это не кажется мне неправильным.
Gradle бревна:
:app:assembleDebug (Thread[Daemon worker Thread 2,5,main]) started.
:app:assembleDebug
Skipping task ':app:assembleDebug' as it has no actions.
:app:assembleDebug (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.001 secs.
:app:crashlyticsGenerateSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) started.
:app:crashlyticsGenerateSymbolsDebug
Putting task artifact state for task ':app:crashlyticsGenerateSymbolsDebug' into context took 0.0 secs.
Task :app:crashlyticsGenerateSymbolsDebug class loader hash: 7064e588920e76a48571db060884e368
Task :app:crashlyticsGenerateSymbolsDebug actions class loader hash: 34788503828837b62e5ca14b48c78094
Skipping task ':app:crashlyticsGenerateSymbolsDebug' as it is up-to-date (took 0.003 secs).
:app:crashlyticsGenerateSymbolsDebug UP-TO-DATE
:app:crashlyticsGenerateSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.003 secs.
:app:crashlyticsCacheSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) started.
:app:crashlyticsCacheSymbolsDebug
Putting task artifact state for task ':app:crashlyticsCacheSymbolsDebug' into context took 0.0 secs.
Task :app:crashlyticsCacheSymbolsDebug class loader hash: 7064e588920e76a48571db060884e368
Task :app:crashlyticsCacheSymbolsDebug actions class loader hash: 34788503828837b62e5ca14b48c78094
Skipping task ':app:crashlyticsCacheSymbolsDebug' as it is up-to-date (took 0.001 secs).
:app:crashlyticsCacheSymbolsDebug UP-TO-DATE
:app:crashlyticsCacheSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.002 secs.
:app:crashlyticsUploadSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) started.
:app:crashlyticsUploadSymbolsDebug
Putting task artifact state for task ':app:crashlyticsUploadSymbolsDebug' into context took 0.0 secs.
Task :app:crashlyticsUploadSymbolsDebug class loader hash: 7064e588920e76a48571db060884e368
Task :app:crashlyticsUploadSymbolsDebug actions class loader hash: 34788503828837b62e5ca14b48c78094
Skipping task ':app:crashlyticsUploadSymbolsDebug' as it is up-to-date (took 0.0 secs).
:app:crashlyticsUploadSymbolsDebug UP-TO-DATE
:app:crashlyticsUploadSymbolsDebug (Thread[Daemon worker Thread 2,5,main]) completed. Took 0.001 secs.f