如何以編程方式更改「觸覺反饋」等全局設置?
(手動您可以在'聲音&顯示設置'中更改此設置)如何以編程方式更改「觸覺反饋」等全局設置?
更改例如飛行模式可以用下面的代碼來完成:
private void setAirplaneMode(boolean bOn)
{
Settings.System.putInt(getContentResolver(),
Settings.System.AIRPLANE_MODE_ON,
bOn ? 1 : 0);
Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
intent.putExtra("state", bOn ? 1 : 0);
sendBroadcast(intent);
}
然而,對於「觸覺反饋」,這並不工作,因爲我沒有找到相應的意圖。
只需
private void setHapticFeedbackMode(boolean bOn)
{
Settings.System.putInt(getContentResolver(),
Settings.System.HAPTIC_FEEDBACK_ENABLED,
bOn ? 1 : 0);
}
不工作(我猜的意圖的廣播是真的有必要)。
我對setHapticFeedbackEnabled
之類的東西不感興趣,因爲這樣你只會改變調用app/view如何處理觸覺反饋的方式。 我正在尋找一種方法來更改全局設置。 (如果你喜歡被檢查/「&顯示設置聲音」手動取消選中複選框選中)。
親愛的,是的,我嘗試過那些,但沒有成功。但我應該說,我不清楚哪些「putExtra」參數應該添加到VIBRATE_SETTING_CHANGED和RINGER_MODE_CHANGED。我在哪裏可以找到哪些信息,我可以知道哪些參數屬於他們(和其他意圖)? –
所有常量的列表在這裏(如果這就是你問的):http://developer.android.com/reference/android/media/AudioManager.html。所以,例如,振鈴模式常量是'RINGER_MODE_NORMAL','RINGER_MODE_SILENT'和'RINGER_MODE_VIBRATE'。 – ernes7a