public static boolean isWiredHeadsetConnected() {
AudioManager mAudioMgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
if(mAudioMgr.isWiredHeadsetOn()){
mAudioMgr.setWiredHeadsetOn(false);
mAudioMgr.setSpeakerphoneOn(true);
mAudioMgr.setMode(AudioManager.MODE_IN_COMMUNICATION);
Toast.makeText(getApplicationContext(), "SpeakerPhone On", Toast.LENGTH_LONG).show();
}
}
は1つが抜き差しされているか否かを検出する意図があります。だから、それを追加する必要があります。
public static boolean isBluetoothHeadsetConnected() {
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
return mBluetoothAdapter != null && mBluetoothAdapter.isEnabled()
&& mBluetoothAdapter.getProfileConnectionState(BluetoothHeadset.HEADSET) == BluetoothHeadset.STATE_CONNECTED;
}
Bluetoothの許可:
<uses-permission android:name="android.permission.BLUETOOTH" />
これは、フォーカスの変更が表示されます。音を鳴らす前に外付けスピーカーが接続されていることを確認したい。また、 'ACTION_HEADSET_PLUG'は有線ヘッドセットを監視するためのもので、私がドキュメントで知る限りです。 –