마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

블루투스 디바이스 검색 질문입니다 (bluetooth device discovery)

0 추천
IntentFilter filter = new IntentFilter();

filter.addAction(BluetoothDevice.ACTION_FOUND);

egisterReceiver(mReceiver, filter);
mBluetoothAdapter.startDiscovery();

 

위와같이 FOUND 필터만 적용하고 찾으면 찾아지지 않고

IntentFilter filter = new IntentFilter();

filter.addAction(BluetoothDevice.ACTION_CLASS_CHANGED);
filter.addAction(BluetoothDevice.ACTION_NAME_CHANGED);

registerReceiver(mReceiver, filter);
mBluetoothAdapter.startDiscovery();

위와같이 두 필터를 적용해야 찾아집니다.

왜 그러한지 궁금합니다.

여러가지 실험결과 기존에 페어링된 블루투스 기기의 연결이 끊어지면 위 소스에서 감지하더군요.

왜 FOUND 필터를 적용하면 페어링 안된 블루투스 기기가 찾아지지 않고
CHANGE 필터들을 적용해야 페어링 안된 블루투스 기기를 감지하는 걸까요?

읽어주셔서 감사합니다.

vomvoru (120 포인트) 님이 2016년 11월 23일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...