2013-10-09 38 views
0

我需要讓我的屏幕開啓/關閉使用SensorEventListener時的Android屏幕OFF/ON

@Override 
    public final void onSensorChanged(SensorEvent event) { 
     if (event.values[0] == 0) 
      turnScreenOFF(); 
     else if (event.values[0] == 5) 
      turnScreenON(); 
    } 

我曾嘗試了很多示例代碼,但我不能讓我的屏幕再次打開它後關閉

還有就是要關閉屏幕代碼:

 WindowManager.LayoutParams params = getWindow().getAttributes(); 
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD); 
     getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON); 
     params.screenBrightness = 0.0f; 
     getWindow().setAttributes(params); 

回答

0

對於屏幕上的開關狀態,你可以用ACTION_SCREEN_ONACTION_SCREEN_OFF意圖嘗試,這會在漂亮的,如果你正在做,可能需要保存狀態或響應用戶的屏幕上睡覺/起牀編輯的應用等

退房的Handling Screen ON/OFF.

嘗試下面:

private void unlockScreen() { 
     Window window = this.getWindow(); 
     window.addFlags(LayoutParams.FLAG_DISMISS_KEYGUARD); 
     window.addFlags(LayoutParams.FLAG_SHOW_WHEN_LOCKED); 
     window.addFlags(LayoutParams.FLAG_TURN_SCREEN_ON); 
    } 

而且從onResume()調用此方法。

+0

當屏幕打開或關閉時,我不需要處理,但是需要通過上面的代碼關閉屏幕後以編程方式打開屏幕。 – GeniDeveloper

+0

看看我更新的答案。 – GrIsHu

+0

欲瞭解更多詳情,請查閱http://android.okhelp.cz/turn-screen-on-off-android-sample-code/ – GrIsHu