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