2015-11-07 3 views
0

У меня есть приложение с кнопкой отключения звука. Я застрял на этом в течение 4 с половиной часов, так что я в отчаянии. Я пытаюсь отключить громкость, когда пользователь нажимает без звука и включается, когда пользователь снова нажимает на него. Это прекрасно работает, за исключением того, что звук не воспроизводится. По какой-то причине Stream_Music равен 0?Объем аудио равен нулю?

public void mute(View view) { 
     mutebutton = (ImageButton) findViewById(R.id.mutebutton); 

     if ((variableForMute.x % 2) != 0) { //If it's odd UNMUTE 
      Log.v(TAG, "Use this volume to unmute " +userVolumeOnStart.userVolume +""); 
      Toast.makeText(Main_Menu.this, "UNMUTED", Toast.LENGTH_SHORT).show(); 
      mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, userVolumeOnStart.userVolume, 0); 
      variableForMute.x++; 


     } else { //If its even MUTE 
      userVolumeOnStart.userVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC); 
      Log.v(TAG, "Right Before Mute " +userVolumeOnStart.userVolume +""); 
      mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0); 
      Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show(); 
      variableForMute.x++; 
     } 
    } 

Вот начало, где я объявляю переменные и объекты:

ImageButton leftcenter; 
ImageButton mutebutton; 
final String TAG = "userVolume"; 
private AudioManager mAudioManager; 



@Override 
protected void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main__menu); 
    mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 

    leftcenter = (ImageButton) findViewById(R.id.startGame); 


} 

Дело в том, что журнал результатов, я получаю следующее:

enter image description here

I должен иметь изменение объема до того, что мой том был до того, как я начал свое приложение. Я хочу, чтобы пользователь мог подключить приложение к тому же самому тому, на котором был изначально включен пользователь. Но почему-то всегда 0 !? Почему это происходит? Мой объем телефона в полном объеме ?!

Пожалуйста, помогите,

Я потратил слишком много времени на это, я ценю все отзывы: положительные, отрицательные, нейтральные, что угодно.

+0

есть несколько томов андроида. Вполне возможно, что вы думаете, громкость на полную, но только громкость звонка на этом уровне, и – njzk2

+0

@ njzk2 Как мне настроить громкость музыки тогда? –

+0

установить значение, которое не равно 0? – njzk2

ответ

0

Я нашел проблему. Я изменил STRAM_MUSIC на STREAM_RING, а переменная userVolumeOnStart.userVolume успешно меняется!

0

btn_mute.setOnCheckedChangeListener (новый OnCheckedChangeListener() {

 @Override 
     public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 
      // TODO Auto-generated method stub 
      AudioManager audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
      if(isChecked) { 
       btn_mute.setBackgroundResource(R.drawable.mute_bt); 
       audio.setStreamMute(AudioManager.STREAM_MUSIC, true); 
      } else { 
       btn_mute.setBackgroundResource(R.drawable.volume_bt); 
       audio.setStreamMute(AudioManager.STREAM_MUSIC, false); 
      } 
     } 
    });