6

I am using Android 5.0.1 Lollipop and developing Bluetooth Low Energy server-client communication. I have Samsung Galaxy s4. I have three characteristic in my Custom Service. I made one of the characteristic's property as write-only and encrypted write. Then I changed it to non-encrypted write. The write operation didnt work for this characteristic anymore. I knew I have to restart Bluetooth adapter from settings and unpair the device but it doesn't work anymore at all. Then I changed the UUID of the characteristic. It discovers the characteristic with the old UUID. I dont get it. How can I remove all Bluetooth data related to one particular device from the Bluetooth adapter?

Edit: I doubled checked it with and iPhone device. iPhone discovers the characteristic with the new UUID while Android discovers it the old one.

ulusoyca
  • 841
  • 9
  • 18
  • Can you give some code? – Kushal Sep 10 '15 at 09:08
  • 1
    I don't think it is about code (because I discover the service and two other characteristics of this service correctly) but thats how I ask characteristics: mBluetoothGatt.getService(servUuid).getCharacteristic(charUuid) I can discover the other – ulusoyca Sep 10 '15 at 09:59

1 Answers1

4

Ok, After more research on settings (Samsung s4 Lollipop 5.01), I found out a way of clearing the Bluetooth cache: Settings -> More -> Application Manager -> All -> Bluetooth -> Clear Cache

If you want to do it programmatically follow this thread: How to programmatically force bluetooth low energy service discovery on Android without using cache

Community
  • 1
  • 1
ulusoyca
  • 841
  • 9
  • 18