Androidは携帯電話のスピーカーをオフにします

1447 ワード

 /**
     *     
     */
    private static int currVolume = 0;
    private AudioManager audioManager;
@Override
public void openSpeaker() {
    try {
        if (audioManager == null) {
            audioManager = ((AudioManager) getSystemService(AUDIO_SERVICE));
        }
        //         
        currVolume = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);

        if (!audioManager.isSpeakerphoneOn()) {
            audioManager.setSpeakerphoneOn(true);

            audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,
                    audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL),
                    AudioManager.STREAM_VOICE_CALL);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    ToastUtil.showToast( "     ");
}
    @Override
    public void closeSpeaker() {
        try {
            if (audioManager == null) {
                audioManager = ((AudioManager) getSystemService(AUDIO_SERVICE));
            }
            if (audioManager.isSpeakerphoneOn()) {
                audioManager.setSpeakerphoneOn(false);
                audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, currVolume,AudioManager.STREAM_VOICE_CALL);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        ToastUtil.showToast( "     ");
    }