欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android 情景模式的设置代码

程序员文章站 2023-11-16 17:50:34
    情景模式的设置大家应当相当熟悉了,但是在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);

以上为最基本的设置方法,在使用中有许多更复杂的组合都是由此基本的方法组合而成的。