Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在iOS 13中更改了KCBADVDATA制造商数据格式?_Objective C_Core Bluetooth_Ios13 - Fatal编程技术网

Objective c 在iOS 13中更改了KCBADVDATA制造商数据格式?

Objective c 在iOS 13中更改了KCBADVDATA制造商数据格式?,objective-c,core-bluetooth,ios13,Objective C,Core Bluetooth,Ios13,在iOS 13上使用我的应用程序时,制造商数据的格式已更改 在iOS 12中访问KCBADVDATA ManufacturerData时,我得到以下格式: 但在iOS 13中,我得到了以下格式: {length=4,bytes=0x13376400} 有人知道为什么会发生变化吗 如何将“1337”部分检索为字符串 这是我访问和打印数据的方式: NSData *manufacturerData = [advertisementData objectForKey:kCBAdvDataMan

在iOS 13上使用我的应用程序时,制造商数据的格式已更改

在iOS 12中访问KCBADVDATA ManufacturerData时,我得到以下格式:

但在iOS 13中,我得到了以下格式:

{length=4,bytes=0x13376400}

有人知道为什么会发生变化吗

如何将“1337”部分检索为字符串

这是我访问和打印数据的方式:

    NSData *manufacturerData = [advertisementData objectForKey:kCBAdvDataManufacturerData];
    NSString *manufacturerString = [NSString stringWithFormat:@"%@", manufacturerData];
    NSString *companyIdentifier = [manufacturerString substringWithRange:NSMakeRange(1, 4)];
    NSLog(@"%@", companyIdentifier);
版画:冷


我尝试了manufacturerData.bytes,但它给了我EXC_BAD_访问错误

自iOS 13以来,
kCBAdvDataManufacturerData
NSData
的描述已更改。 要能够提取和解析
广告数据
,您不应再基于
说明
。 以下是在iOS 13和旧iOS版本上运行的Swift解决方案版本:

根据上面的代码,您可以提取manufacturerData
NSData

let publicData = Data(bytes: manufacturerData.bytes, count: Int(manufacturerData.length))

let publicDataAsHexString = publicData.dataToHexString // this result is same what ever the iOS version.

//// Data extension
extension Data {
    var dataToHexString: String {
        return reduce("") {$0 + String(format: "%02x", $1)}
    }
}

格式没有改变,只是在
打印
数据的实例时得到的输出。显示如何访问数据。见评论说明
已更改。在prod中使用它从来都不是一个好的解决方案。可能的重复我没有使用描述。我做错了什么?
NSString*manufacturerString=[nsstringstringwithformat:@“%@”,manufacturerData]正在调用
说明
。克利里。