iOS解释BLE数据和字节swift 3

iOS解释BLE数据和字节swift 3

问题描述:

所以我非常坚持使用BLE设备和它的数据。从BLE设备读取数据时,数据存储在数据对象中。现在对于这个例子,我将采取*的时间,因为这(应该)是一个容易的检查。因此,Bluejay荚保存数据,当打印数据如下debugPrint("Epoch Time: \(data as NSData)")时,结果为"Epoch Time: <869c0200>"。到目前为止我认为这么好。当我复制值869c0200并将其放入Mac计算器(编程器模式)时,请进行字节翻转,并与网站epochtimeconverter进行核对。我在1970年得到了一个合理的日期。因为它经常在死了电池后复位到1970年。我设置了一个断点,并查看了我看到的一些事情的值。
_bytes UnsafeMutableRawPointer? (_rawValue = 0x00000001c04364b0)
_rawValue Builtin.RawPointer 0x1c04364b0 他们每个人给我一个不同的时间。有没有人能够一步一步地帮助我,我应该如何以正确的方式交换这些数据?iOS解释BLE数据和字节swift 3

简而言之:“我怎样才能正确地从我的BLE设备读取/操纵纪元时间?”

在此先感谢您的阅读时间。

你不能按照你想要打印的方式打印NSData。你必须将它转换为字符串(字节数组)。

例:

let yourDataByte = [UInt8](advertiseData as! NSData) 

let yourString = String(NSString(format:"%02X", Int(yourDataByte[0])))