1

Ich schreibe eine Android-App, um mit einem BLE-Gerät zu kommunizieren. Die App ist eine Erholung von einem iOS-Version jedoch jede Schreibanforderung Objective C-CodeGATT_REQUEST_NOT_SUPPORTED keine weiteren Informationen verfügbar?

ARBEITS

const uint8_t bytes[] = {0x01,0x02,0x00,0x00}; 
NSData *data = [NSData dataWithBytes:bytes length:sizeof(bytes)]; 
[_device writeValue:data forCharacteristic:_dataCommsCharacteristic type:CBCharacteristicWriteWithResponse]; 

Equivalent Android/Java-Code ein GATT_REQUEST_NOT_SUPPORTED Antwort innerhalb onCharacteristicWrite wirft die

eine GATT_REQUEST_NOT_SUPPORTED recieves
byte bytes[] = {0x01,0x02,0x00,0x00}; 
dataCommsCharacteristic.setValue(bytes); 
boolean writeStatus = mGatt.writeCharacteristic(dataCommsCharacteristic); 

dann

@Override 
    public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic 
      characteristic, int status) { 
if (status == BluetoothGatt.GATT_REQUEST_NOT_SUPPORTED){ 
       Log.d(TAG,"Request not supported"); 
     } 
} 

Fehle mir etwas, was hier offensichtlich ist ?! Für mich sind die obigen 2 Snippets im Wesentlichen das Gleiche, aber das Gerät erkennt den Android nicht, erkennt aber das iOS eins.

Alle Gedanken werden sehr geschätzt !!!

+0

die iOS eine möglicherweise die Sicherheitsstufe automatisch (ich weiß nichts über die Details der beiden Implementierungen, aber dieser Fehler ist manchmal im Zusammenhang mit der Anforderung mit einer niedrigeren Sicherheitsstufe als erforderlich ist) –

Antwort

0

Es scheint, dass dies ein Geräteproblem wurde. Als letzten Ausweg habe ich das Galaxy S5, das ich getestet habe, neu gestartet und alles hat perfekt funktioniert.

Ich hätte das zuerst ausprobieren sollen, nehme ich an !!!

+0

Hallo Joel Spencer, ich bin Mit dem gleichen Problem in Androide konfrontiert, so können Sie einige Beispiele dazu in Verbindung bringen –

Verwandte Themen