Bonjour tous ensemble, je développe sur une application BLE, et j'ai écrit une activité pour la connexion GATT. Maintenant j'ai un problème parce que parfois le système reconnaît les services et les caractéristiques et d'autres fois pas.Services en Bluetooth faible énergie ne sont pas trouvés à chaque fois
Voici mon code:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gatt);
peripheralTextView = (TextView) findViewById(R.id.PeripheralTextView);
peripheralTextView.setMovementMethod(new ScrollingMovementMethod());
scanServiceButton = (Button) findViewById(R.id.scan_service);
scanServiceButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mBluetoothGatt.discoverServices();
}
});
//get the Bluetooth device which comes from mainActivity
BluetoothDevice bluetoothDevice = getIntent().getExtras().getParcelable("selectedDevice");
String test = bluetoothDevice.getAddress();
Toast toast = Toast.makeText(this, "Verbunden mit " + test, Toast.LENGTH_LONG);
toast.show();
Log.d("GattActivity", "connectGatt()");
mBluetoothGatt = bluetoothDevice.connectGatt(this, false, mGattCallback);
}
Et voici ma onServiceDiscovered où parfois je reçois les services toutes les valeurs, mais à plusieurs reprises qu'il ne soit pas:
@Override
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
//new Services discovered
if(status == BluetoothGatt.GATT_SUCCESS){
broadcastUpdate(ACTION_GATT_SERVICES_DISCOVERED);
displayGattServices(mBluetoothGatt.getServices());
}else{
Log.d("GattActivity", "onServicesDiscovered received: " + status);
}
}
I googlé beaucoup et je pense qu'il est très similaire à l'échantillon de Google, mais je ne sais pas pourquoi il montre parfois et parfois non.
Peut-être que quelqu'un peut me aider
Peut-être qu'il est important de savoir quels appareils j'ai testé. J'ai utilisé un Samsung S5 Mini et un Google Nexus 5, ma publicité est envoyée par un OnePlus 3T via l'exemple Advtertisement de Google. – Fab