태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

액티비티에서 볼륨키를 눌러 조절할 오디오 항목을 선택하는 방법

2011.02.15 21:18

안드로이드 시스템에서 조절할 수 있는 오디오 항목은 매우 다양합니다. 벨소리 볼륨, 미디어 볼륨, 시스템 볼륨 및 알림 볼륨을 각각 따로 설정할 수 있는데, 이러한 볼륨들을 액티비티상에서 바로 볼륨키를 사용하여 조절하고 싶은 경우가 있습니다.

한 예로, 음악 플레이어 애플리케이션은 음악 재생 액티비티가 표시되고 있을 때 볼륨키를 누르면 '미디어 볼륨'을 조절하는 기능을 제공합니다. 반면 벨소리를 선택하는 애플리케이션의 경우, 벨소리 선택 액티비티가 표시되고 있을 때 볼륨키를 누르면 '벨소리 볼륨'을 조절합니다.

이와 같이, 액티비티의 성격에 따라 볼륨키를 눌러 조절할 오디오 항목을 선택하려면 어떻게 해야 할까요?
복잡하게  생각하면 onKeyDown()  메서드를 오버라이드하고, 오디오 볼륨을 조절할 수 있는 AudioManager를 사용하여 볼륨을 조절할 항목을 선택하도록 할 수도 있지만, Activity 클래스 내의 다음 코드를 사용하면 간편하게 액티비티상에서 원하는 항목의 볼륨을 조절할 수 있습니다. 

API
public final void setVolumeControlStream (int streamType)
액티비티에서 볼륨키를 눌렀을 때 조절할 볼륨 항목을 설정합니다.

setVolumeControlStream() 메서드의 인자로 받을 수 있는 항목은 다음과 같습니다.

  • AudioManager.STREAM_ALARM : 알람 볼륨입니다.
  • AudioManager.STREAM_DTMF : DTMF 톤 볼륨입니다.
  • AudioManager.STREAM_MUSIC : 미디어 볼륨입니다.
  • AudioManager.STREAM_NOTIFICATION : 알림 볼륨입니다.
  • AudioManager.STREAM_RING : 벨소리 볼륨입니다.
  • AudioManager.STREAM_SYSTEM : 시스템 볼륨입니다.
  • AudioManager.SYSTEM_VOICE_CALL : 음성 통화 볼륨입니다.

위 코드를 다음과 같이 액티비티 코드에 적용하면 액티비티에서 볼륨키를 눌러 선택한 오디오 항목의 볼륨을 조절할 수 있습니다.
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ...(생략)...
        setVolumeControlStream(AudioManager.STREAM_MUSIC); // 미디어 볼륨을 조절하도록 설정
    }


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

커니 멀티미디어/Audio , , , , , , , ,

  1. Blog Icon

    좋은 정보 감사합니다 ^^
    그렇다면 한가지 궁금증이 생기게 되는데요 볼륨키를 눌를 때 볼륨창이 나타나는데 이것은 어디에 존재하며
    볼륨창이 나오는지 안나오는지 activity에서 체크할 수 있는 방법도 있을까요?? 급 궁금해집니다^^ 감사합니다.

  2. 볼륨 조절창은 토스트 형태로 띄워집니다.어디에 존재한다고 말하기는 애매하네요.. ㅎㅎㅎ

  3. Blog Icon
    이야

    감사합니다 ㅠㅠ

    찾던 자료네요... 아우 이죽일놈의 버그들...

  4. Blog Icon
    홍길동

    좋은 정보 정말 감사합니다. ^^

    정말 몇달전부터 찾던 정보이네요. ^^

    수고하세요.

  5. Blog Icon
    홍길동

    좋은 정보 정말 감사합니다. ^^

    정말 몇달전부터 찾던 정보이네요. ^^

    수고하세요.