当调节系统音量时,接收系统发来的广播
AudioManager audioManager = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE) ;
sound = (SeekBar) findViewById(R.id.sb_sound);
/**
* 注册当音量发生变化时接收的广播
*/
private void myRegisterReceiver(){
mVolumeReceiver = new MyVolumeReceiver() ;
IntentFilter filter = new IntentFilter() ;
filter.addAction("android.media.VOLUME_CHANGED_ACTION") ;
registerReceiver(mVolumeReceiver, filter) ;
}
/**
* 处理音量变化时的界面显示
* @author long
*/
private class MyVolumeReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
//如果音量发生变化则更改seekbar的位置
if(intent.getAction().equals("android.media.VOLUME_CHANGED_ACTION")){
int currVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC) ;// 当前的媒体音量
sound.setProgress(currVolume) ;
}
}
}
音量键亦可用于解锁(小米)
|