단말기 환경설정에 따라서 음소거 처리방법.

2012. 10. 30. 17:43프로그래밍/Android

728x90
반응형

게임개발에서 진동 또는 음소거시 게임 음악과 배경음악이 정상적으로 출력되도록 하는 것이 좋습니다.

환경설정에서 음소거나 진등으로 설정해두고 게임을 실행했을때 소리가 출력되지 않게되면 사용자는 불편함을 느끼는 것 같습니다. 또는 게임의 버그라고 생각하는 경우가 있어보입니다.

따라서 환경설정과는 상관없이 배경음악과 효과음이 정상적으로 출력될 수 있도록 해주세요.


다음은 단말기의 환경설정에 따라서 음소거를 시켜주는 부분입니다.

onStart()에 추가해주면 어플이 실행될때 처리됩니다. 하지만 우리가 원하는 환경설정의 설정과는 상관없이 소리가 출력되기를 원하기 때문에 다음 부분은 제거해주면됩니다.

       AudioManager audioManager =  (AudioManager)getSystemService(Context.AUDIO_SERVICE);

       if(audioManager.getRingerMode()== AudioManager.RINGER_MODE_NORMAL) 

   { 

        // 사운드 재생

        NativeSetSoundMuteOff();

        System.out.println("COCOS2DX : SOUND ON ");

   }

       else

       {

// 사운드를 제거해준다.

        NativeSetSoundMuteOn();

        System.out.println("COCOS2DX : SOUND OFF");

       }

위 부분은 환경설정의 진동 또는 음소거설정에 따른 처리를 해주기 위해서 추가하시면 됩니다.


스마트폰게임 개발하시는 분들에게 조금이나마 도움이되었으면 합니다.

감사합니다.



728x90
반응형