2
我有一個前臺服務正在等待一個動搖。當它接收到的運動,它會發出廣播用:屏幕沒有在Android中打開喚醒鎖定
Intent i = new Intent("com.company.app.shakeDetectedMessage");
sendBroadcast(i);
我的主要活動收到此與實現該方法的廣播接收器:
@Override
public void onReceive(Context context, Intent intent)
{
MainActivity.this.turnOnScreen();
Toast.makeText(getApplicationContext(), "Screen ON", Toast.LENGTH_SHORT).show();
}
輪到我上屏的方法:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
我有
PowerManager pm = (PowerManager)getSystemService(POWER_SERVICE);
PowerManager.WakeLock mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "SensorRead");
mWakeLock.acquire();
部分喚醒鎖0
在服務中聲明
但是,當我關閉屏幕並震動時,屏幕無法打開!我確認每種方法都使用日誌。 onReceive即使在屏幕關閉的情況下也能正常工作。廣播正在工作。只是屏幕不會打開!