我正在编写一个使用蓝牙的 Cocoa 应用程序。我正在尝试连接到蓝牙设备,但它失败了。
IOBluetoothDevice *btDevice;
// I do search and find the device
btDevice = ;//device found
//btDevice is not nil
IOReturn status = [btDevice openConnection];
if (status != kIOReturnSuccess) {
NSLog( @"Error - failed to connect. %d", status );
}
我在搜索时得到了设备,但openConnection
方法失败了。和 NSLog 打印
错误 = 连接失败。4
现在这个错误代码表示什么?我查看了IOKit.framework/IOReturn.h
文件,它显示了许多错误代码
#define kIOReturnError iokit_common_err(0x2bc) // general error
#define kIOReturnNoMemory iokit_common_err(0x2bd) // can't allocate memory
#define kIOReturnNoResources iokit_common_err(0x2be) // resource shortage
#define kIOReturnIPCError iokit_common_err(0x2bf) // error during IPC
#define kIOReturnNoDevice iokit_common_err(0x2c0) // no such device
.......
//And many more
我写了一个函数来识别什么是错误代码4
- (void)logError:(OSStatus)status{
if (status == kIOReturnError) {
NSLog(@"kIOReturnError");
}else if(status == kIOReturnNoMemory){
NSLog(@"kIOReturnNoMemory");
}else if(status == kIOReturnNoResources){
NSLog(@"kIOReturnNoResources");
}else if(status == kIOReturnIPCError){
NSLog(@"kIOReturnIPCError");
}else if(status == kIOReturnNoDevice){
......
......
}else{
NSLog(@"No price for you");
}
}
它打印
没有价格给你
错误代码 4 是什么意思?还有没有更简单的方法可以从 OSStatus 错误代码中识别错误原因?