【问题标题】:I can't reproduce iOS Crash Log我无法重现 iOS 崩溃日志
【发布时间】:2022-05-02 05:54:55
【问题描述】:

我是移动开发和 Xamarin 的新手,正在尝试发布我的第一个 iOS 应用,但是, 由于此崩溃日志,Apple 拒绝了我的应用程序:

OS Version:          iPhone OS 13.6.1 (17G80)
Release Type:        User
Baseband Version:    n/a
Report Version:      104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Triggered by Thread:  0

Thread 0 name:  tid_407  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x0000000185d02df0 0x185cdc000 + 159216
1   libsystem_pthread.dylib         0x0000000185c22948 0x185c20000 + 10568
2   libsystem_c.dylib               0x0000000185bb1c24 0x185b3c000 + 482340
3   libsystem_c.dylib               0x0000000185bb1bb0 0x185b3c000 + 482224
4   SpeedRead.iOS                   0x000000010422b470 undefined
5   SpeedRead.iOS                   0x0000000104220b90 _xamarin_get_block_descriptor
6   SpeedRead.iOS                   0x00000001040e6590 _sqlite3_rekey_v2
7   SpeedRead.iOS                   0x000000010407b3f0 _sqlite3_rekey_v2
8   SpeedRead.iOS                   0x0000000104079dd8 _sqlite3_rekey_v2
9   SpeedRead.iOS                   0x000000010406fbb8 _sqlite3_rekey_v2
10  SpeedRead.iOS                   0x00000001025b66ac _sqlite3_rekey_v2
11  SpeedRead.iOS                   0x000000010232635c _sqlite3_rekey_v2
12  SpeedRead.iOS                   0x000000010232db84 _sqlite3_rekey_v2
13  SpeedRead.iOS                   0x0000000102681d9c _sqlite3_rekey_v2
14  SpeedRead.iOS                   0x0000000102576380 _sqlite3_rekey_v2
15  SpeedRead.iOS                   0x000000010408cff0 _sqlite3_rekey_v2
16  SpeedRead.iOS                   0x00000001041486a4 _sqlite3_rekey_v2
17  SpeedRead.iOS                   0x000000010414bf08 _sqlite3_rekey_v2
18  SpeedRead.iOS                   0x0000000102193a14 _sqlite3_rekey_v2
19  SpeedRead.iOS                   0x0000000102194744 _sqlite3_rekey_v2
20  Foundation                      0x0000000186320f94 0x1861df000 + 1318804
21  CoreFoundation                  0x0000000185e96d14 0x185dea000 + 707860
22  CoreFoundation                  0x0000000185e96c68 0x185dea000 + 707688
23  CoreFoundation                  0x0000000185e963c4 0x185dea000 + 705476
24  CoreFoundation                  0x0000000185e911fc 0x185dea000 + 684540
25  CoreFoundation                  0x0000000185e90bc8 0x185dea000 + 682952
26  GraphicsServices                0x00000001902725cc 0x19026f000 + 13772
27  UIKitCore                       0x000000018a043744 0x1895d5000 + 10938180
28  SpeedRead.iOS                   0x00000001026cc238 _sqlite3_rekey_v2
29  SpeedRead.iOS                   0x0000000102635ef0 _sqlite3_rekey_v2
30  SpeedRead.iOS                   0x0000000102635e74 _sqlite3_rekey_v2
31  SpeedRead.iOS                   0x00000001021b9f64 _sqlite3_rekey_v2
32  SpeedRead.iOS                   0x0000000102576380 _sqlite3_rekey_v2
33  SpeedRead.iOS                   0x000000010408cff0 _sqlite3_rekey_v2
34  SpeedRead.iOS                   0x00000001041486a4 _sqlite3_rekey_v2
35  SpeedRead.iOS                   0x000000010414e8fc _sqlite3_rekey_v2
36  SpeedRead.iOS                   0x000000010406b5a8 _sqlite3_rekey_v2
37  SpeedRead.iOS                   0x0000000104228594 undefined
38  SpeedRead.iOS                   0x00000001021b9ebc _sqlite3_rekey_v2
39  libdyld.dylib                   0x0000000185d0d384 0x185d0c000 + 4996

我无法在 Visual Studio 中重现此崩溃,我尝试了所有模拟器,但效果很好。苹果评论说:

按钮打开正在使用实体框架和 sqllite 读取数据库的页面。 (这里是源代码:https://github.com/fatihmgenc/SpeedRead,页面是 AntrenmanPage 和 MetinEklemePage)

我使用 Ad-hoc 将应用程序上传到商店连接和我的构建设置:

此时你有什么建议?

【问题讨论】:

  • 你是否在相同版本的 iOS 上调试运行过这个?

标签: ios xamarin xamarin.forms xamarin.ios crash-log


【解决方案1】:

您的 SQLite 数据库存在问题,您可以看到它说 _sqlite3_rekey_v2 未定义。很可能在您提交之前进行测试时,您忘记了从设备中删除该应用,以及您的缓存和计算机上的临时文件。

如果您按照按钮点击他们所说的内容,则该错误位于Antrenman 页面中,并且与您的SQLite 数据库有关,因此它可能位于this linethis line 中。所以试着在这两行和catch里面放置一个try-catch,告诉代码当上一行没有被调用时它应该做什么。

【讨论】:

  • 感谢您的回答我无法尝试您的建议,因为现在我遇到了另一个问题,就像我之前提到的:forums.xamarin.com/discussion/184164/ios-crash-log 当我将我的应用程序调试/部署到模拟器时,它没有直接打开,它启动屏幕后关闭,我单击然后它正常运行。我通过关闭热重载来解决这个问题,但现在它又出现了。这是解释问题的视频:streamable.com/rufqie 我尝试使用另一个示例应用程序,它可以正常打开。但是我的应用程序正在像这样关闭(调试没有结束,也没有任何错误
  • 是的,它也没有达到断点,现在我尝试使用另一个模拟器(iPhone 11 iOS 13.6)它可以工作,这个问题(即关于在启动屏幕后关闭)在这个模拟器中不存在。断点也命中,没有进入接球线,尝试顺利通过。我在尝试之前从模拟器中删除了应用程序,我还清理了项目并删除了 iOS 项目中的 obj&bin 文件,在调试之前我还应该清理什么? ——
  • 嗯,这很奇怪。尝试使用不同的场景进行测试并使其崩溃
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多