zoukankan      html  css  js  c++  java
  • Android 情景模式的设置

    情景模式的设置大家应当相当熟悉了,但是在Android中如何通过自己的程序进行情景模式的设置呢,情景模式分为多种多种,即可以使用系统自带的,也可以使用自定义的,但是在开发某些程序时,可能需要在程序中更改情景模式,那么此就需要进行情景模式的设置。下面简单介绍一下情况模式的设置方式:

    首先获取当前的情景模式:

    代码
    void getInitring(AudioManager audio)
    {
    //取得手机的初始音量,并初始化进度条
    int volume=audio.getStreamVolume(AudioManager.STREAM_RING); //取得初始音量
    //取得初始模式,并分别设置图标
    int mode=audio.getRingerMode(); //取得初始模式
    }

    通过此代码,当然需要再加工一下,那么就可以得到当前的情景模式,为以后的设置做一下准备,然后也可能知道要不要再次设置。

    设置情景模式一:只声音,无振动:

    代码
    void ring(AudioManager audio) {
    audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
    AudioManager.VIBRATE_SETTING_OFF);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
    AudioManager.VIBRATE_SETTING_OFF);
    Toast.makeText(
    this, "设置成功!当前为铃声", Toast.LENGTH_LONG).show();
    }
    设置后系统只有声音,没有振动。

    设置情景模式二:即有声音也有振动:

    代码
    void ringAndVibrate(AudioManager audio) {
    audio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
    AudioManager.VIBRATE_SETTING_ON);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
    AudioManager.VIBRATE_SETTING_ON);
    Toast.makeText(
    this, "设置成功!当前为铃声加振动", Toast.LENGTH_LONG).show();
    }
    这样设置后,在发声的时候同时也会有振动提醒。

    设置情景模式三:只能振动:

    代码
    void vibrate(AudioManager audio) {
    audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
    AudioManager.VIBRATE_SETTING_ON);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
    AudioManager.VIBRATE_SETTING_ON);
    Toast.makeText(
    this, "设置成功!当前为振动", Toast.LENGTH_LONG).show();
    }
    此设置后只有振动,没有声音:

    设置情景模式四:无声无振动:

    代码
    void noRingAndVibrate(AudioManager audio) {
    audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
    AudioManager.VIBRATE_SETTING_OFF);
    audio.setVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION,
    AudioManager.VIBRATE_SETTING_OFF);
    Toast.makeText(
    this, "设置成功!当前为无声无振动", Toast.LENGTH_LONG).show();
    }
    设置后系统没有声音和振动。无法进行相应的提示。

    以上所有设置的声音均为系统默认的声音大小,那么我们是否可以自定义声音的大小呢,答案是当然可以。要设置声音的大小 ,需要设置以下函数:

    提高音量:

    audio.adjustVolume(AudioManager.ADJUST_RAISE, 0);
    减小音量:

    audio.adjustVolume(AudioManager.ADJUST_LOWER, 0);
    以上为最基本的设置方法,在使用中有许多更复杂的组合都是由此基本的方法组合而成的。

  • 相关阅读:
    java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header.
    spring-session-data-redis依赖冲突问题
    centos7启动iptables时报Job for iptables.service failed because the control process exited with error cod
    图片上传后台服务报内存溢出 Out Of Memory Java heap space
    mysql 数据库密码忘记重置 进行远程连接
    打Jar包
    Type interface com.innovationV2.mapper.UserMapper is not known to the MapperRegistry
    关于java基础类型Integer String的clone()
    clion使用clang编译
    token & refresh token 机制总结
  • 原文地址:https://www.cnblogs.com/fly_binbin/p/1925938.html
Copyright © 2011-2022 走看看