我面临一个奇怪的问题。在iOS应用程序中,我正在使用clang在linux上交叉编译本机c库(arm64)。图书馆出口3个功能。 其中一个功能存在问题。它会导致应用程序立即退出。没有崩溃日志,调试器中没有输出。 唯一的输出是在我可以通过XCode访问的设备控制台上。 发生崩溃时会记录此信息:
error 08:13:44.179080 +0200 backboardd Unable to get short BSD proc info for 354: No such process
error 08:13:44.179159 +0200 backboardd Unable to get proc info for 354: Undefined error: 0
这种崩溃在iOS 10中没有发生,但它在iOS 11.3上发生(不在iPhone 7上)。 这是一个表格,显示iOS设备受哪个iOS设备影响:
+------------+--------+--------+------+--------+--------+-------+--------+-------+
| | 10.2.1 | 10.3.3 | 11.0 | 11.1.3 | 11.2.1 | 11.3 | 11.3.1 | 11.4 |
+------------+--------+--------+------+--------+--------+-------+--------+-------+
| iPod touch | | OK | | | | OK | | |
| iPad Air 2 | | | OK | | | | | |
| iPhone 7 | OK | | | | | crash | | |
| iPhone 8 | | | | | | | | crash |
| iPhone X | | | | OK | | | crash | crash |
+------------+--------+--------+------+--------+--------+-------+--------+-------+
令人难以置信的是,10.2.1上的iPhone7不会崩溃,但在11.3下它会崩溃。
有人对此有解释吗?我接下来要做的是在本机库中放置一些调试打印输出。