2010-03-02 18 views
0

有人可以在snipet代碼中顯示我如何在android中始終設置背光嗎?Android中的背光操作

+0

已經在此提問並回答了:http://stackoverflow.com/questions/2131948/force-screen-on – hackbod 2010-03-03 02:57:55

回答

0
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK , "My Tag"); 
wl.acquire(); 
// ..screen will stay on during this section.. 
wl.release(); 

Nb。鍵盤背光將被允許熄滅。

+0

如果我在釋放鎖之前退出應用程序,會發生什麼情況? – 2010-03-02 16:55:55

+0

另外,是否允許同時獲取多個鎖? – 2010-03-02 17:02:35

+3

您需要在應用程序退出前釋放鎖定,否則會發生抱怨。可以同時獲取多個鎖,然後全部需要釋放以使背光恢復正常行爲。 – bdls 2010-03-02 18:42:26

5

作爲WakeLock的替代方案,我建議使用FLAG_KEEP_SCREEN_ON標誌。

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

這是很容易,喚醒鎖定使用,因爲你不必擔心釋放它當活動被暫停/銷燬。

窗口標誌:只要這個窗口是 對用戶可見,保持設備的 屏幕開啓明亮。

+0

這是確定的路要走。喚醒鎖不同於管理,並確保它始終被銷燬。 – Janusz 2010-03-03 08:55:36