Как программно отключить проводную гарнитуру в Java

Пожалуйста, отправьте мой вопрос здесь. Этот вопрос является продолжением этого:

Как проверить и перенаправить звук между проводной гарнитурой и громкой связью?

Я смог частично решить мою проблему, включив разрешения

  <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

в моем Android манифесте для того же куска кода. Теперь я могу включать и отключать динамики телефона, но я не могу программно отключить соединение проводной гарнитуры, когда проводная гарнитура все еще физически подключена к телефону.

Может кто-нибудь помочь мне здесь? Есть ли конкретное намерение, которое я могу использовать, чтобы отключить и включить подключение проводной гарнитуры?

1 ответ

Я искал решение онлайн и нашел что-то

private class MusicIntentReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_HEADSET_PLUG)) {
            int state = intent.getIntExtra("state", -1);
            switch (state) {
                case 0:
                    audioManager.setSpeakerphoneOn(true);
                    break;
                case 1:
                    audioManager.setSpeakerphoneOn(false);
                    break;
                default:
                    audioManager.setSpeakerphoneOn(true);
            }
        }
    }
}

Надеюсь, поможет

Если вы хотите посетить сайт, вот ссылка

Другие вопросы по тегам