zoukankan      html  css  js  c++  java
  • Android之声音管理器《AudioManager》的使用以及音量控制

    以下为网上下载然后拼接--

    Android声音管理AudioManager使用

    手机都有声音模式,声音、静音还有震动,甚至震动加声音兼备,这些都是手机的基本功能。在Android手机中,我们同样可以通过Android的SDK提供的声音管理接口来管理手机声音模式以及调整声音大小,这就是Android中AudioManager的使用。

    以下分别是AudioManager设置声音模式和调整声音大小的方法。

     

    如何获取声音管理器:

    AudioManager audioManager = (AudioManager) this.getSystemService(AUDIO_SERVICE);

    里面主要的方法:

    A、设置声音模式

    //声音模式
    AudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
    //静音模式
    AudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
    //震动模式
    AudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);

    B、调整声音大小

    //减少声音音量
    AudioManager.adjustVolume(AudioManager.ADJUST_LOWER,  0);
    //调大声音音量
    AudioManager.adjustVolume(AudioManager.ADJUST_RAISE, 0);

     

    getMode()获取音频模式

    getRingerMode()获取铃声震动模式

    ----------------------------------------------------------------

    这里如果使用了和手机震动有关的模式,记得添加权限。android.permission.VIBRATE

    【android】AudioManager音量控制

    //音量控制,初始化定义
    AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    //最大音量
    int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    //当前音量
    int currentVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
    直接控制音量的多少


    if(isSilent){
      mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
    }else{
      mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, tempVolume, 0); //tempVolume:音量绝对值
    }


    以一步步长控制音量的增减,并弹出系统默认音量控制条:

    //降低音量,调出系统音量控制
    if (flag == 0 ){
       mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER,
                                 AudioManager.FX_FOCUS_NAVIGATION_UP);
    }
    //增加音量,调出系统音量控制
    else if (flag == 1 ){
       mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE,
                                 AudioManager.FX_FOCUS_NAVIGATION_UP);
    }
  • 相关阅读:
    C++ 虚函数表解析
    函数调用运算符重载
    成员访问运算符重载
    递增和递减运算符重载
    java 如何查看jdk版本&位数
    oracle 11g完美卸载
    win10 你没有足够的权限执行此操作。
    maven 找不到或无法加载主类
    eclipse 如何对maven项目进行打包?
    Core Dataeasy出现的错误
  • 原文地址:https://www.cnblogs.com/aukle/p/3233684.html
Copyright © 2011-2022 走看看