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); 

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

 


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值