我在macOS命令行工具(macOS 10.13.4,XCode 9.3)中使用IOBluetooth
framework。我的应用程序按预期工作,但在调用IOBluetoothHostController.default()
时会发出有关标准错误例外的错误消息。
给出以下代码:
import Foundation
import IOBluetooth
if let controller = IOBluetoothHostController.default() {
if controller.powerState.rawValue == 1 {
print("Bluetooth is on")
} else {
print("Bluetooth is off")
}
} else {
print("Can't get Bluetooth host controller")
}
我得到以下输出:
$ ./btsimple
2018-04-25 15:06:05.098 btsimple[10756:673370] Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
2018-04-25 15:06:05.099 btsimple[10756:673370] Exception NSInvalidArgumentException thrown while decoding IOBluetoothSDPServiceRecord
Bluetooth is on
$
为什么会记录这些错误消息?在调用IOBluetoothHostController.default()
之前,我是否需要以某种方式设置SDP服务记录?