2010-03-02 44 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