/**<p>项目名:HFIOT_integration</p> * <p>包名: com.nb82.bean</p> * <p>文件名:AudioManagerBean.java</p> * <p>版本信息: 2.1.0</p> * <p>日期: 2015/5/26/16:48.</p> * Copyright (c) 2015帮你公司-版权全部 */ package com.nb82.bean; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.util.Log; /** * <p>名称:com.nb82.bean.AudioManagerBean</p> * <p>描述:系统音量变化监听</p> * <pre> * 处理系统的音量变化的操做 * </pre> * * @author 鲍建明 * @version 2.1.0 * @date 2015/5/26/16:48 */ public class AudioManager { private android.media.AudioManager mAudioManager; public AudioManager(Context context){ IntentFilter filter = new IntentFilter() ; filter.addAction("android.media.VOLUME_CHANGED_ACTION") ; VolumeReceiver vr = new VolumeReceiver(); context.registerReceiver(vr, filter); //音量控制,初始化定义 mAudioManager = (android.media.AudioManager) context.getSystemService(Context.AUDIO_SERVICE); } /** * 显示系统声音进度条 */ public void showVolume(){ mAudioManager.adjustStreamVolume(android.media.AudioManager.STREAM_MUSIC, android.media.AudioManager.FLAG_SHOW_UI, android.media.AudioManager.FX_FOCUS_NAVIGATION_UP); } /** * 声音变化广播器 */ class VolumeReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //若是音量发生变化则更改seekbar的位置 if(intent.getAction().equals("android.media.VOLUME_CHANGED_ACTION")){ Log.w("android.media.VOLUME_CHANGED_ACTION", "用户调节声音了..."); int currentVolume = mAudioManager.getStreamVolume(android.media.AudioManager.STREAM_MUSIC); //TODO 根据当前音量进行其余的业务操做 } } } }