2011-05-11 2 views
1

의 볼륨을 변경하고자하지만 당신은 단지 대신 먼저 getStreamMaxVolume를 호출 (StreamType을해야 23 볼륨을 설정해서는 안나는 내가 볼륨을 조정하려면이 코드를 사용 ringertonevolume

int volume=23; 
audio.setStreamVolume(AudioManager.STREAM_RING,volume, AudioManager.FLAG_PLAY_SOUND|AudioManager.FLAG_ALLOW_RINGER_MODES);} 
+1

"이다하셨습니까 '일'은별로 도움이되지 않습니다. 오류 메시지가 있었습니까? 추가 정보를 포함하도록 질문을 편집하십시오. – Emyr

답변

9

를 작동하지 않았다)이 경우 Ringer의 볼륨 인 StreamType에 가능한 최대 볼륨을 가져옵니다.

예를 들어, 최대로 벨소리의 볼륨을 설정하려면!

audioManager.setStreamVolume(AudioManager.STREAM_RING, audioManager.getStreamMaxVolume(AudioManager.STREAM_RING), FLAG_ALLOW_RINGER_MODES|FLAG_PLAY_SOUND); 

UPDATES

int streamMaxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_RING); 
    Toast.makeText(this, Integer.toString(streamMaxVolume), Toast.LENGTH_LONG).show(); //I got 7 
    audioManager.setStreamVolume(AudioManager.STREAM_RING, streamMaxVolume, AudioManager.FLAG_ALLOW_RINGER_MODES|AudioManager.FLAG_PLAY_SOUND); 

확인. 이제는 집에서 코드를 시험해 볼 수 있습니다. 여기서 볼 수 있듯이 streamMaxVolume은 정수 23을 23으로 설정하려고 시도하면 나에게 정수 7을줍니다. 그래서 제 혹시 setStreamVolume에 사용할 수있는 값

0, 1, 2, 3, 4, 5, 6, 7 최저 < -----> 최고

//set to lowest -> 
audioManager.setStreamVolume(AudioManager.STREAM_RING, 0, AudioManager.FLAG_ALLOW_RINGER_MODES|AudioManager.FLAG_PLAY_SOUND); 

//set to loudest -> 
audioManager.setStreamVolume(AudioManager.STREAM_RING, 7, AudioManager.FLAG_ALLOW_RINGER_MODES|AudioManager.FLAG_PLAY_SOUND); 
+0

그러면 코드를 사용하여 볼륨을 조정할 수 있습니다 – kannappan

+0

이 코드 라인이 효과가 있습니까? 만약 내가 아프게 작동한다면 – Rejinderi

+0

나중에 코드 라인 – kannappan