Я работаю над приложением, в котором мне нужно подключиться к устройствам BLE и отправить им уведомление из приложения.Мне удалось подключиться и отправить уведомление, когда приложение находится в forground. Когда мое приложение уничтожено, устройства подключены, но уведомление не отправляется на устройство BLE для обновления статуса.Я создал фоновые службы и планировщик заданий для связи между BLE и моим приложением.
For Connecting BLE Device I have used this method.
BluetoothDevice mDevice;BluetoothGatt mConnGatt;
mConnGatt = mDevice.connectGatt (mContext, true, new BluetoothGattCallback () {});
Когда получено push-уведомление, затем запишите данные на устройстве BLE, используя этот метод: / ** * * ЗАПИСЬ ДАННЫХ НА УСТРОЙСТВО BLE * BluetoothGattCharacteristic mWriteGattCharacteristic;* * /
private void writeDataOnGatt(final int value) {
Log.e("GATT_BLINKING_CLASS", "writeDataOnGatt");
if (mWriteGattCharacteristic != null) {
// This method is only called for LED characteristic
mWriteGattCharacteristic.setValue(value, BluetoothGattCharacteristic.FORMAT_UINT8, 0);
final int data = mWriteGattCharacteristic.getIntValue(BluetoothGattCharacteristic.FORMAT_UINT8, 0);
Log.e("GATT_BLINKING_CLASS", " DATA " + data);
if (mBluetoothGatt != null) {
Log.e("GATT_BLINKING_CLASS", "writeDataOnGatt INSIDE");
mBluetoothGatt.writeCharacteristic(mWriteGattCharacteristic);
}
}
}