我嘗試閱讀和CoreBluetoothCoreBluetooth閱讀的NSData
所以我的設備(外設)寫的東西給我一個陣列 的lenght和陣列爲一體。
我用這種方法
(void)readValueForCharacteristic:(CBCharacteristic *)characteristic;
讀取數值時,我從周圍的
(void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error;
呼籲 當我讀到一個值得到的答覆是沒有問題的
char arrayLength;
charakteristik.value getBytes:&arrayLength lenght:SERVICE_ARRAYLENGTH_LEN]
self.MyArrayLenght=(float)arrayLength;
-
但是,當我得到的數組從外圍我不知道如何讀他們
charakteristik.value是NSData的
當我試圖
NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:charakteristik.value]
我有錯誤
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive (0x4e, 0x49, 0x42, 0x41, 0x72, 0x63, 0x68, 0x69)'
十六進制(0x4e,0x49,0x42,0x41,0x72,0x63,0x68,0x69 .......)是我想要讀取和稍後顯示的數據
如何讀取NSData?或者我可以如何將NSData轉換爲NSArray?
編輯: 問題解決