3
특정 시간에 장치를 깨우고 키 가드를 닫아 사용자가 해당 키를 닫을 때까지 일부 작업을 표시하는 앱을 개발 중입니다. 따라서롤리팝 키 가드가 해제되지 않았습니까?
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
은 Android Lollipop에서 작동하지 않지만 이전 Android 버전에서는 완벽하게 작동합니다. 어떤 제안?
@Override
public void onReceive(Context context, Intent intent) {
mWakeLock = ((PowerManager) context.getApplicationContext().getSystemService(Context.POWER_SERVICE)).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "TAG");
if (!mWakeLock.isHeld()) {
mWakeLock.acquire();
}
Intent intent = new Intent(context, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
mWakeLock.release();
}
MainActivity 클래스
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
setContentView(R.layout.activity);
....
}
브로드 캐스트 리시버 클래스 그리고 지금은 안드로이드 롤리팝에도 노력하고 있습니다 5.0.1
: