-(void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error
{
dispatch_async(dispatch_get_main_queue(), ^{
NSData *data = characteristic.value;
uint8_t *array = (uint8_t*) data.bytes;
cadenceValue = [CharacteristicReader readUInt8Value:&array];
self.cadence.text = [NSString stringWithFormat:@"%d", cadenceValue];
});
}
SWIFT 2にケイデンスBLE(ブルートゥース低エネルギー)からデバイスを取得する方法。私はこれのための正確なコードを見つけることができません。この場合、didUpdateValueForCharacteristic
デリゲートメソッドが呼び出されます。ケイデンス
私はNRFツールボックスのコードを持っているが、それはObjective Cのまたは 3迅速であるが、私のプロジェクトは、迅速に2あります。私はブリッジヘッダーを使用して客観的なcメソッドを呼び出そうとしましたが、それは常に0ケイデンスを返しました。私はCharacteristicReader
の定義わからないんだけど、あなたは試してみてください
Swift 3のサンプルコードはどのように見えますか? – davidgyoung
didUpdateValueForCharacteristic に迅速2 //にbindMemoryと指示先のエラーを取得 (変異データ= characteristic.value するvar配列= UnsafeMutablePointerてみましょう:.bytes.bindMemory(にNSDataのように(データを):UINT8!。自己、容量:データ!カウント)) self.cadenceValue = NORCharacteristicReader.readUInt8Value(ptr:&array) //メソッド。 静的readUInt8Value FUNC(PTR aPointer:UnsafeMutablePointer INOUT) - > UINT8 { せヴァル= aPointer.pointee aPointer = aPointer.successor() リターンヴァル }は –
Ved
コード上方変換する問題に直面@davidgyoung @davidgyoung迅速な2で、問題は、ポインター。ポイントとbindMemory – Ved