BT를 켜고 끌 때 사용하는 버튼이있는 앱이 있습니다. 거기에 다음 코드가 있습니다.BluetoothAdapter에 대한 상태 변경 감지 중?
public void buttonFlip(View view) {
flipBT();
buttonText(view);
}
public void buttonText(View view) {
Button buttonText = (Button) findViewById(R.id.button1);
if (mBluetoothAdapter.isEnabled() || (mBluetoothAdapter.a)) {
buttonText.setText(R.string.bluetooth_on);
} else {
buttonText.setText(R.string.bluetooth_off);
}
}
private void flipBT() {
if (mBluetoothAdapter.isEnabled()) {
mBluetoothAdapter.disable();
} else {
mBluetoothAdapter.enable();
}
}
나는 BT 상태를 화나게하고 UI를 업데이트해야하는, - 버튼을 호출 버튼 플립를 호출하고 있습니다. 그러나 내가 가지고있는 문제는 BT가 켜지는 데 몇 초가 걸리는데,이 초 동안에는 BT 상태가 활성화되어 있지 않아 버튼에 2 초 후에 켜지더라도 Bluetooth가 꺼져 있다고 말합니다.
나는 BluetoothAdapter 안드로이드 문서에서 STATE_CONNECTING
상수를 찾았지 만 ... 나는 그것을 사용하는 방법, 초보자라는 것을 모릅니다.
그래서, 내가있어 두 가지 질문 :
- 동적으로 BT 상태 (예 : 버튼 또는 이미지로) UI 요소를 묶을 수있는 방법이 있나요 그 때 BT 상태 변경 때문에, 버튼도 바뀔거야?
- 그렇지 않으면 버튼을 눌러 정확한 상태를 얻고 싶습니다 (BT가 켜져 있다고하더라도 2 초 후에 만 연결되므로 연결을 원한다고 말하고 싶습니다). 어떻게해야합니까?
당신은 BT가 회전을 시작하면, 다음을 변경하는 부울 상태를 확인 부울을 사용하고 true로 설정할 수 없습니다 단추? –
이 AOSP 코드를보고 블루투스 켜기/끄기 변경 사항을 추적하는 방법에 대한 느낌을 얻으십시오 : http://androidxref.com/5.1.0_r1/xref/frameworks/base/services/core/java/com/ android/server/BluetoothManagerService.java –