Android 如何在Crashlytics中获取golang的堆栈轨迹

Android 如何在Crashlytics中获取golang的堆栈轨迹,android,go,stack-trace,crashlytics,google-fabric,Android,Go,Stack Trace,Crashlytics,Google Fabric,我们的应用程序是Android应用程序,它有一个由golang编写的JNI。我们使用织物碰撞分析来追踪汽车 但是,在JNI发生崩溃后,我们无法在Crashlytics中获取堆栈跟踪信息。在Java中,我们可以得到它 在Object-C for iOS应用程序中,我们可以上传dSYM文件以映射函数。但是我在哪里可以和Golang一起做呢 织物能支撑它吗 现在,在Crashlytics中,我们只能看到以下内容: Crashed: Thread 0 libc.so

我们的应用程序是Android应用程序,它有一个由golang编写的JNI。我们使用织物碰撞分析来追踪汽车

但是,在JNI发生崩溃后,我们无法在Crashlytics中获取堆栈跟踪信息。在Java中,我们可以得到它

在Object-C for iOS应用程序中,我们可以上传dSYM文件以映射函数。但是我在哪里可以和Golang一起做呢

织物能支撑它吗

现在,在Crashlytics中,我们只能看到以下内容:

Crashed: Thread
0  libc.so                        0xf6f4c778 (Missing)
1  libc.so                        0xf6f26791 (Missing)
2  libc.so                        0xf6f23933 (Missing)
3  (Missing)                      0x15c791e6 (Missing)
4  libgojni.so                    0xdddd910e (Missing)
5  libc.so                        0xf6f214ee (Missing)
6  (Missing)                      0x15c791e6 (Missing)
7  libgojni.so                    0xde00a8de (Missing)
8  libgojni.so                    0xde00a93e (Missing)
9  libgojni.so                    0xdddd8ed6 (Missing)

我们已经解决了这个问题

背景:

我们构建了一个Android应用程序,它有一个由go编写的JNI,它是由gomobile构建的。 我们使用Fabric Crashlytics来监控崩溃信息。 但是在Crashlytics中,我们看不到发生在JNI中的完整堆栈跟踪信息

解决办法是:

首先,请检查您的NDK版本,它必须是
r17c
或更高版本

在gomobile命令中添加一个参数
--work
,如
gomobile bind--work-YOUR-SOURCE-code-PATH work=TEMP-PATH

构建成功后,将
jniLibs
中的所有文件移动到
YOUR-PROJECT-PATH/app/obj

最后,执行Fabric文档中的步骤列表


希望我们的经验可以节省您的时间:-)

我们已经解决了这个问题

背景:

我们构建了一个Android应用程序,它有一个由go编写的JNI,它是由gomobile构建的。 我们使用Fabric Crashlytics来监控崩溃信息。 但是在Crashlytics中,我们看不到发生在JNI中的完整堆栈跟踪信息

解决办法是:

首先,请检查您的NDK版本,它必须是
r17c
或更高版本

在gomobile命令中添加一个参数
--work
,如
gomobile bind--work-YOUR-SOURCE-code-PATH work=TEMP-PATH

构建成功后,将
jniLibs
中的所有文件移动到
YOUR-PROJECT-PATH/app/obj

最后,执行Fabric文档中的步骤列表

希望我们的经验能为您节省时间:-)