情景模式的設置大家應當相當熟悉了,但是在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);
以上為最基本的設置方法,在使用中有許多更復雜的組合都是由此基本的方法組合而成的。