c# - 更好的 MonoTouch 与 TestFlight 崩溃

标签 c# iphone ios xamarin.ios testflight

我们已经将 TestFlight 和 TestFlight SDK 与 MonoTouch 连接起来,到目前为止运行良好。

我们注意到的一件事是崩溃报告更适合 Obj-C 应用。

上传压缩的 dSYM 文件后,它们看起来像这样:

0 OurApp 0x007a7116 testflight_backtrace + 170
1 OurApp0x007a7c3c TFSignalHandler + 208
2 libsystem_c.dylib 0x34f68538 _sigtramp + 48
3 libsystem_c.dylib 0x34f5df5a pthread_kill + 54
4 libsystem_c.dylib 0x34f56fea abort + 94
5 OurApp 0x007793b3 monoeg_g_logv (goutput.c:137)
6 OurApp 0x0077941f monoeg_g_log (goutput.c:147)
7 OurApp 0x005f1393 get_numerous_trampoline (aot-runtime.c:3447)
8 OurApp 0x005f1b2f mono_aot_get_imt_thunk (aot-runtime.c:3576)
9 OurApp 0x006e2c83 initialize_imt_slot (object.c:1247)
10 OurApp 0x006e321f build_imt_slots (object.c:1371)
11 OurApp 0x006e356f mono_vtable_build_imt_slot (object.c:1439)
12 OurApp 0x005fcf83 mono_convert_imt_slot_to_vtable_slot (mini-trampolines.c:198)
13 OurApp 0x005fd50f common_call_trampoline (mini-trampolines.c:333)
14 OurApp 0x005fe573 mono_vcall_trampoline (mini-trampolines.c:644)
15 OurApp 0x0056a68f generic_trampoline_vcall (mscorlib.dll.6.s:194345)
16 OurApp 0x00416b4f System_Collections_Generic_List_1__ctor_System_Collections_Generic_IEnumerable_1_T (mscorlib.dll.6.s:32014)
17 OurApp 0x0026955b System_Linq_Enumerable_ToList_TSource_System_Collections_Generic_IEnumerable_1_TSource (System.Core.dll.6.s:1917)

因此您可以告诉通用 C# 函数发生崩溃的位置。 (注意:此崩溃是 MonoTouch 5.0.1 中的一个错误,其中 Linq 泛型被搞砸了,似乎在 5.0.2 中已修复)

如果能在这里获得完整的 C# 堆栈跟踪,那就太好了,关于如何做到这一点有什么想法吗?我可以连接到 AppDomain.UnhandledException 并在我的 static void Main 方法周围放置一个 try-catch,但想知道是否有一种方法可以将堆栈跟踪报告给 TestFlight。

最佳答案

我不熟悉 MonoTouch,但是使用 Remote Logging 怎么样? TestFlight SDK 的功能?

关于c# - 更好的 MonoTouch 与 TestFlight 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8299406/

相关文章:

c# - `Dynamic` 到静态类转换器。它存在吗?

c# - 构造函数中的递归

html - iPhone横向滚动甚至在空白页面上

iphone - 整个项目的标签栏显示?

ios - 重用 Table View 变量 Swift

c# - 如何获得霍夫曼码的长度

C# MD5 哈希需要匹配 PHP MD5 哈希(带盐)

iphone - 使用 IParameterInspector 验证 WCF 参数并在客户端处理FaultException

ios - 使用 if 语句的结果作为变量

ios - 从容器 View 中删除后退栏按钮标题