在 [BluetoothDevice classicDevice] 无法识别的选择器上寻找崩溃源

pro*_*lfe 6 ios core-bluetooth ios-bluetooth swift ios13

我看到崩溃实例的大量增加,在一些不同的崩溃报告中,它们都以相同的致命异常结束:

[BluetoothDevice classicDevice]: unrecognized selector sent to instance 0x2805a8ba0

它在 iOS 12 中发生了几次,但在 iOS 13 中它就出轨了。还有人看到这个吗?是否与 iOS 13 中蓝牙的新隐私权限有关?我没有其他线索可循,只是试图找到其他看到这一点的人。

导致它的堆栈跟踪在我的应用程序代码中没有任何内容,只有 AppDelegate 的声明行。它是 Foundation、CoreFoundation 和一些名为 BluetoothSettings 的 Apple 框架的混合体。正如你所看到的,我的崩溃日志丢失了很多细节——可能是 dsyms 有问题,不确定......但他们在这里。

Fatal Exception: NSInvalidArgumentException
-[BluetoothDevice classicDevice]: unrecognized selector sent to instance 0x2805a8ba0
0  CoreFoundation                 0x191b8d54c (Missing)
1  libobjc.A.dylib                0x1918a80c8 (Missing)
2  CoreFoundation                 0x191a8bb60 (Missing)
3  CoreFoundation                 0x191b91bd4 (Missing)
4  CoreFoundation                 0x191b93ac0 (Missing)
5  BluetoothSettings              0x1bb3ae944 (Missing)
6  Foundation                     0x191f56a94 <redacted>
7  CoreFoundation                 0x191ae5478 (Missing)
8  CoreFoundation                 0x191ae54c8 (Missing)
9  CoreFoundation                 0x191ae47c0 (Missing)
10 CoreFoundation                 0x191ae446c (Missing)
11 CoreFoundation                 0x191a5d434 (Missing)
12 CoreFoundation                 0x191ae3d9c (Missing)
13 Foundation                     0x191e457fc (Missing)
14 libobjc.A.dylib                0x1918a3af0 <redacted>
15 Foundation                     0x191f81404 (Missing)
16 CoreFoundation                 0x191b08b40 (Missing)
17 CoreFoundation                 0x191b08a94 (Missing)
18 CoreFoundation                 0x191b08200 (Missing)
19 CoreFoundation                 0x191b030cc (Missing)
20 CoreFoundation                 0x191b02978 (Missing)
21 GraphicsServices               0x19bc32534 (Missing)
22 UIKitCore                      0x195bf4f0c (Missing)
23 MY APP                         0x1003bf8e8 main + 42 (AppDelegate.swift:42)
24 libdyld.dylib                  0x191982f04 <redacted>
Run Code Online (Sandbox Code Playgroud)

Mar*_*c_V 2

我遇到了同样的问题。当调用时显示的系统弹出窗口中选择蓝牙设备时,我们能够重现此崩溃

    [[EAAccessoryManager sharedAccessoryManager] showBluetoothAccessoryPickerWithNameFilter:completion:]
Run Code Online (Sandbox Code Playgroud)

我目前没有更多信息,但这可能是由于 IAP1 支持。您的应用程序是否处理蓝牙设备?