Android中音量按键在调低音量时,如果一直按住Down按钮不放,则系统将音量跳到最小后,又自动调节到静音状态。这个机制和iPhone是不同的,iPhone中无论你怎么按Volume-按钮,只能调到最小,还是有一点声音,是不能自动静音的。

Android中如果要禁止这个自动静音功能,也是有办法的,找到Down按钮的处理事件,做个判断就行了,代码在:

frameworks/base/media/java/android/media/AudioManager.java

public void handleKeyDown(KeyEvent event, int stream) {        int keyCode = event.getKeyCode();        switch (keyCode) {            case KeyEvent.KEYCODE_VOLUME_UP:            case KeyEvent.KEYCODE_VOLUME_DOWN:                /*                 * Adjust the volume in on key down since it is more                 * responsive to the user.                 */                int flags = FLAG_SHOW_UI | FLAG_VIBRATE;                /* avoid auto mute when adjust lower */                int currentVolume = getStreamVolume(STREAM_MUSIC);                Log.e(TAG, String.format("currentVolume=%d", currentVolume));                if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN && currentVolume <= 1) {                    break;                }                if (mUseMasterVolume) {                    adjustMasterVolume(                            keyCode == KeyEvent.KEYCODE_VOLUME_UP                                    ? ADJUST_RAISE                                    : ADJUST_LOWER,                            flags);                } else {

更多相关文章

  1. android 对话框之——带单选列表、带多选项列表、按钮等问题
  2. Android状态栏适配和自定义toolbar胶囊按钮(可实现半透明状态栏)
  3. Android 代码实现按钮 按下弹起事件
  4. Android通过AudioFlinger限制音量最大值
  5. Android 通过按钮弹出系统菜单(通过Button显示菜单)转
  6. Android实现音量调节的方法
  7. Android EditText 自带清除按钮 的一种解决方案(ViewGroup实现)
  8. 自定义控件:滑动开关按钮

随机推荐

  1. Android 复习笔记之图解Actionbar
  2. android UI适配简单记录二
  3. Android(不)联动的顶层菜单栏tabLayout+v
  4. Android常用Support库
  5. Android 获取存储信息
  6. Smail反汇编文件语句说明
  7. Android 复制单个文件到指定目录,Android
  8. [置顶] Android学习进阶路线导航线路(And
  9. 提升基于英特尔® 架构的 Android* 模拟
  10. Android(安卓)layer-list 中图片被拉伸问