2012-11-03 118 views
1

我的應用程序爲用戶節省了原來的亮度與:改變屏幕亮度的onPause(Android應用程序)

originalBrightness = Settings.System.SCREEN_BRIGHTNESS;

,然後改變它,而程序運行。

originalBrightness是私有全局字符串。

public void onPause() { 
    super.onPause(); 
    int brightness = Integer.getInteger(originalBrightness); 
    setBrightness(brightness); 
} 
private void setBrightness(int brightness) { 
    WindowManager.LayoutParams layoutParams = getWindow().getAttributes(); 
    layoutParams.screenBrightness = brightness/100.0f; 
    getWindow().setAttributes(layoutParams); 
} 
:當用戶點擊「主頁」或當應用程序暫停原來的屏幕需要重新設置,我試圖做到這一點是這樣,但應用程序的迷戀現在我所要做的是

是否有男人它工作?由於

回答

1

嘗試使用Settings.System.SCREEN_BRIGHTNESS設置系統默認亮度:

android.provider.Settings.System.putInt(getContentResolver(), 
android.provider.Settings.System.SCREEN_BRIGHTNESS,brightness /100.0f); // 0-255 

,並添加這些許可的清單中:

<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" /> 
<uses-permission android:name="android.permission.WRITE_SETTINGS" /> 
+0

你能解釋一下什麼劑量android.provider.Settings.System.putInt( getContentResolver(), android.provider.Settings.System.SCREEN_BRIGHTNESS,brightness/100.0f); // 0-255 – vlio20

+0

@VladIoffe:當你在提問''當用戶點擊「Home」或當應用程序暫停原始屏幕時需要重新設置時,您目前正在爲Activity設置亮度而不是設備默認亮度'意味着你想恢復設備默認亮度,然後這是從設備自動完成。如果你有任何問題,那麼你將需要修改系統默認設置作爲我的答案 –

+0

@ VladIoffe:問題得到解決或不? –