Android听筒模式和免提模式的切换

听筒和免提的切换并不是一句简单的setSpeakerphoneOn

/**
     * 外放模式和听筒模式 切换
     *
     * @param on
     */
    private void changeToincall(boolean on) {
        if (on) {//外放模式
            mAudioManager.setMode(AudioManager.MODE_NORMAL);
            mAudioManager.setSpeakerphoneOn(true);
            button_speakeron.setText("外放模式");
        } else {//听筒模式
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
                mAudioManager.setMode(AudioManager.MODE_IN_COMMUNICATION);
            } else {
                mAudioManager.setMode(AudioManager.MODE_IN_CALL);
            }
            mAudioManager.setSpeakerphoneOn(false);
            button_speakeron.setText("听筒模式");
        }
    }

 

你可能感兴趣的:(Android听筒模式和免提模式的切换)