【问题标题】:How can I detect if the volume is set to mute?如何检测音量是否设置为静音?
【发布时间】:2013-02-24 07:19:32
【问题描述】:

在开发安卓应用时,如何检测音量是否设置为静音?

如果音量变为静音或取消静音,我的应用程序如何获得通知?

【问题讨论】:

    标签: android audio volume


    【解决方案1】:

    您可以使用 AudioManager 来检查音量是否静音。

    AudioManager audio = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    switch( audio.getRingerMode() ){
    case AudioManager.RINGER_MODE_NORMAL:
       break;
    case AudioManager.RINGER_MODE_SILENT:
       break;
    case AudioManager.RINGER_MODE_VIBRATE:
       break;
    }
    

    对于音量变化,有 BroadcastReceiver 。

    public class VolumeKeyReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
           //Implement Logic
        }
    }
    

    注册广播接收器

    VolumeKeyReceiver keyReceiver = new VolumeKeyReceiver();
    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction("android.media.VOLUME_CHANGED_ACTION");
    registerReceiver(keyReceiver, intentFilter);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多