をお読みください。CoreBluetoothは私が私のデバイス(周辺機器)の一人として私に配列 のな長さや配列を送信CoreBluetooth</p> <p>で何かを読み書きしようとしたNSData
私は、周辺
(void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error;
から答えを得るとき、私は私はそれが
問題ではありません一つの値を読んだとき を呼んでいる。この方法で(void)readValueForCharacteristic:(CBCharacteristic *)characteristic;
を値を読みます
char arrayLength;
charakteristik.value getBytes:&arrayLength lenght:SERVICE_ARRAYLENGTH_LEN]
self.MyArrayLenght=(float)arrayLength;
-
しかし、私は、周辺からの配列を取得するときに私は私が
NSArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:charakteristik.value]
にしようとしたとき
charakteristik.valueはNSDataの
であるそれらの読み方を知りませんエラーが発生しました
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '[NSKeyedUnarchiver initForReadingWithData:]: incomprehensible archive (0x4e, 0x49, 0x42, 0x41, 0x72, 0x63, 0x68, 0x69)'
16進数(0x4e、0x49,0x42,0x41,0x72,0x63,0x68,0x69 .......)は、私が読んで後で表示したいデータです
NSDataはどのように読むことができますか?またはNSDataをNSArrayに変換する方法は?
編集: 問題は、おそらく今では、あなたの質問に答えただろう