0
我们正在Android 4.0.4机顶盒上运行一个应用程序,我们想按一些按键关闭屏幕(通过HDMI连接)并保持该框运行。我们正在做这样的:允许Android在屏幕关闭的情况下接收关键事件
/* Acquire Wake Lock */
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock lock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Tag");
lock.acquire();
/* Turn OFF screen */
WindowManager.LayoutParams params = getWindow().getAttributes();
params.flags |= WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);
//lock.release(); /* box will go to sleep if lock released */
当我们按下该键,屏幕没有熄灭,盒子似乎仍在运行。然而,当我们试图再次按下该键在这种状态下,它会像:
I/InputDispatcher( 173): Dropped event because input dispatch is disabled.
有什么我们可以做的检测在这种状态下按键输入?或者有没有其他方法可以保持盒子正常工作并关闭屏幕?
在此先感谢!
谢谢,但我认为我们已经在使用PARTIAL_WAKE_LOCK,我是否正确使用它?顺便说一句,这是遥控器上的硬件键。 – Asususer 2013-05-07 05:39:01