Müssen die Aktivität (Design-Dialogfeld) über den Dialer mit einigen Informationen in Aktivität wie echte Anrufer gefüllt zeigen. In entsperrtem Telefon funktioniert es gut.Aktivitätsanzeige (Themendialog) Über dem Dialer im Sperrbildschirm anzeigen?
Aber in gesperrten Telefon, es funktioniert nicht wie erwartet. Hat ein wenig gegoogelt und einige Flaggen gefunden, um den Dialog im Sperrbildschirm erscheinen zu lassen.
CallActivity.java
LayoutParams layoutParams = new LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT, LayoutParams.TYPE_SYSTEM_DIALOG | LayoutParams.TYPE_SYSTEM_ALERT |
LayoutParams.TYPE_SYSTEM_OVERLAY,
LayoutParams.FLAG_NOT_TOUCH_MODAL |
LayoutParams.FLAG_NOT_FOCUSABLE |
LayoutParams.FLAG_TURN_SCREEN_ON |
LayoutParams.FLAG_SHOW_WHEN_LOCKED |
LayoutParams.FLAG_KEEP_SCREEN_ON |
LayoutParams.FLAG_DISMISS_KEYGUARD,
PixelFormat.TRANSLUCENT);
getWindow().setAttributes(layoutParams);
Im obigen Code hinzugefügt i Änderungen im Zusammenhang Aktivität erscheinen zu lassen, als Dialog und einige Flags (FLAG_TURN_SCREEN_ON, FLAG_SHOW_WHEN_LOCKED, FLAG_KEEP_SCREEN_ON, FLAG_DISMISS_KEYGUARD) im Zusammenhang mit Dialog Arbeit gut in Sperrbildschirm zu machen (aber es war nicht).
ich auch die Aktivität mit (von Rundfunkempfänger), beginnend
Intent intent = new Intent(context, MyActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
context.startActivity(intent);