如何監聽 android 手機情景模式(有聲、靜音、振動)?


當用戶設置情景模式時,系統會廣播一個 RING_MODE_CHANGE_ACTION 消息,於是我們可以定義一個廣播接收器,監聽此消息,然後通過 AudioManager 提供的接口判斷當前的情景模式做出特定的處理。

2. 關鍵代碼


private BroadcastReceiver mReceiver = new BroadcastReceiver() {
	@Override
	public void onReceive(Context context, Intent intent) {
		if (intent.getAction().equals(AudioManager.RING_MODE_CHANGE_ACTION)) {
			AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
			final int ringerMode = am.getRingerMode();
			switch (ringerMode) {
				case AudioManager.RINGER_MODE_NORMAL:
					//normal
					break;
				case AudioManager.RINGER_MODE_VIBRATE:
					//vibrate
					break;
				case AudioManager.RINGER_MODE_SILENT:
					//silent
					break;
			}
		}
	}
}






發佈了34 篇原創文章 · 獲贊 7 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章