2014-12-12 10 views
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

:

답변