BLE 서버를 노출하는 Android 애플리케이션이 있습니다. 나는 BluetoothGattServer#connect와 연결한다. 작동합니다 - 내 앱이 BluetoothGattServerCallback#onConnectionStateChange에 STATE_CONNECTED으로 전화를 겁니다. 클라이언트가 끝나면 BluetoothGattServer#cancelConnection으로 앱과의 연결을 끊습니다.BluetoothGattServer cancelConnection이 연결을 취소하지 않습니다.
하지만 BluetoothGattServerCallback#onConnectionStateChange에 전화를하지 않고 내 BLE 클라이언트가 광고를 시작하지 않는 연결이 (아무것도 그것에 연결되어 있지 않은 경우는 않습니다) 여전히 활성화되어있는 것으로 보인다. 로그 캣에서
는 난 단지 참조 :
BluetoothGattServer: cancelConnection() - device: XX:XX:XX:XX:XX:XX
재미있는 부분은, 내 앱이 바로 내가 완전히 BT를 해제로 STATE_DISCONNECTED으로 BluetoothGattServerCallback#onConnectionStateChange에 전화를 가져옵니다.
Google 트래커의 비슷한 문제 : 63461 및 63464
IIRC의 cancelConnection이 완전히 초기 대부분의 장치에 고장 안드로이드 BLE 먼저 나와서 Google은이를 고치지 않기로 결정했습니다. – reTs
해결 방법을 찾으셨습니까? 나는 똑같은 것으로 고민 중이다 –
아니. - 내가 할 수있는대로 BLE에서 멀리 떨어진 곳으로 이사하기로 결심했다. –