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);
    以上为最基本的设置方法,在使用中有许多更复杂的组合都是由此基本的方法组合而成的。

  • 相关阅读:
    SOD-80 LL34 DL-35 (2.7~75V)贴片稳压二极管【worldsing 笔记
    射频识别技术漫谈(7)——ID卡【worldsing笔记】
    射频识别技术漫谈(6)——通讯协议概述【worldsing笔记】
    射频识别技术漫谈(5)——防冲突【worldsing 笔记】
    Modbus Poll master-slave测试 Dtech USB转485(worldsing 笔记)
    超级MINI STLINK V2 官方固件自动升级 ST-Link 【worldsing 笔记】
    FreeModbus Slave For AVR源代码 精简版2 【worldsing 笔记】
    射频识别技术漫谈(4)——数据编码【worldsing 笔记】
    射频识别技术漫谈(3)——能量、调制【worldsing 笔记】
    FreeModbus Slave 改进的eMbPoll()【worldsing 笔记】
  • 原文地址:https://www.cnblogs.com/fly_binbin/p/1925938.html
Copyright © 2011-2022 走看看