1

didReadRSSI周辺機器にコールバックできません!!

私はiPad miniで開発しています - iOS 8.1.2

周辺機器をNSMutable配列に設定し、その配列から接続、切断などを呼び出すことができるので、その配列に接続された周辺機器オブジェクトが有効になります。

私のコードは以下のとおりです。何が問題なのですか? 周辺機器でコールバックを受け取らないのはなぜdidReadRSSIですか??

- (void)updateConnectedRSSITimerFunc {
    for(TheCustomPeripheral *arrayItem in self.peripherals) {
      if(arrayItem.connected) {
          //This is called every 4 seconds from an NSTimer succesfully
          [arrayItem.peripheral readRSSI];
          NSLog(@"RSSI request");
      }
    }
}

-(void) peripheral:(CBPeripheral *)peripheral didReadRSSI:(NSNumber *)RSSI error:(NSError *)error {
//This never get's called!!!!!
   NSLog(@"RSSI returned %@", [RSSI stringValue]);
}
4

1 に答える 1

2

解決しました!!! タイマーでこれを追加しました...私はまだiOSに慣れていないので、コールバックを取得するデリゲートビットを逃しました...

            arrayItem.peripheral.delegate = self;

補足質問として、なぜこの警告が表示されるのですか? アプリは正常に動作するため、無視しています。

互換性のない型 'xxxListTableViewController *const __strong' から 'id' に割り当てています

回答: 私のクラスは CBPeripheralDelegate でなければなりませんでした。例: @interface myInterface ,CBPeripheralDelegate>

于 2014-12-11T00:53:50.373 に答える