【发布时间】:2020-07-03 17:53:19
【问题描述】:
我的项目是一个带有原生 C++ 代码和 Java 的简单 Android 游戏,它使用 cmake 编译 C/C++ 代码。
我将我的本机符号上传到 Firebase Crashlytic(Fabric 之前),以便在它们发生时捕捉我的崩溃。
我按照指令 here 设置 crashlytics。
我发现了一个具体问题:如果我对 C/C++ 代码使用 lld 链接器,Crashlytic 不会显示我的应用程序的任何堆栈跟踪。
这是我设置为使用 LLD 的配置set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fuse-ld=lld")
在build.gradle中配置
dependencies {
classpath 'com.android.tools.build:gradle:3.4.2'
classpath 'io.fabric.tools:gradle:1.31.2'
classpath 'com.google.gms:google-services:4.3.3'
}
我使用crashlyticUploadSymbolsDebug 上传符号
日志上传很安静。
2020-03-23 15:02:03.664 [DEBUG] (Execution worker for ':') com.crashlytics - Crashlytics attempting to upload cSYM files.
2020-03-23 15:02:03.669 [DEBUG] (Execution worker for ':') com.crashlytics - POST file: C:\Users\nhut_\.crashlytics\com.crashlytics.tools\app-f5c61bd8c0ab9f7beacd8e312f884ac1970c43e5\debug\csyms\Breakout-aarch64-2cbd7a2add29f8fbff897f89c43ea0d93088c11f.cSYM.gz to URL: https://cm.crashlytics.com/api/v3/platforms/android/code_mappings
2020-03-23 15:02:03.983 [DEBUG] (Execution worker for ':') com.crashlytics - POST response: [reqId=c8949d54f956c305a08f1744dabdd9b226b494443224707e] 202
2020-03-23 15:02:03.984 [DEBUG] (Execution worker for ':') com.crashlytics - POST file: C:\Users\nhut_\.crashlytics\com.crashlytics.tools\app-f5c61bd8c0ab9f7beacd8e312f884ac1970c43e5\debug\csyms\Breakout-aarch64-b0e07c6b9715755bb3b1d881aefe1777a7dcca11.cSYM.gz to URL: https://cm.crashlytics.com/api/v3/platforms/android/code_mappings
2020-03-23 15:02:04.235 [DEBUG] (Execution worker for ':') com.crashlytics - POST response: [reqId=65ed22d3d2111a7dadc5b61109f7d7664dcd86ba58579c9f] 202
2020-03-23 15:02:04.236 [DEBUG] (Execution worker for ':') com.crashlytics - cSYM file(s) uploaded.
你知道如何解决这个问题吗?
我的操作系统是Windows 10 1909 64bit, Android Studio 3.5.1, android-ndk-r21
测试的设备是 Pixel 3。
感谢您抽出宝贵时间阅读并感谢您的建议。
我发现类似的问题是here,但直到现在都没有答案
【问题讨论】:
标签: android firebase google-fabric crashlytics-android