2010-04-30 36 views
7

Bazı Android programları, donanım ses açma/kapama düğmelerine basıldığında "ortam sesi" kaydırıcısını tetikler. Uygulamam, donanım düğmelerine basıldığında zil sesi düzeyini ayarlıyor gibi görünüyor.Android uygulamasında Ortam Sesi Kaydırıcıyı Etkinleştir

Medya birimi kaydırıcısını nasıl etkinleştiririm?

Uygulamamı kullanırken medya düzeyini değiştirmek için kullanıcıların ayarlarına girmeleri gerekmekten nefret ediyorum.

+0

oynatma sırasında düğmelerin davranışını test edin ve. Oynatma sırasında medya kontrolü, düğmeler için varsayılan değer olmalıdır. Ancak christophers yöntemi, kullanıcıların etkin olduğu her andaki ses seviyesini değiştirmelerini sağlayacaktır. – Janusz

cevap

3
private AudioManager audio; 

İçinde onCreate:

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

geçersiz kılma onKeyDown: sesler Yürütülmezken

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    switch (keyCode) { 
    case KeyEvent.KEYCODE_VOLUME_UP: 
     audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, 
       AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI); 
     return true; 
    case KeyEvent.KEYCODE_VOLUME_DOWN: 
     audio.adjustStreamVolume(AudioManager.STREAM_MUSIC, 
       AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI); 
     return true; 
    default: 
     return false; 
    } 
}