Schauen wir uns im Detail an, wie Key Guard in dieser Sitzung implementiert wird.
Wir werden die Abfolge der Schritte zur Aktivierung des Sicherheitsfensters des Schlüsselwächters untersuchen.
Das folgende Diagramm zeigt die Abfolge der Schritte zur Aktivierung des Schlüsselsicherheitsfensters.
Die physische Tasteneingabe wird vom Eingabe-Dispatcher abgefangen und an vier Fenstermanager gesendet, die wiederum an den Wächterdienst
gesendet werden, und der Schlüsselwächterdienst ruft die eigene Systembereitschaftsmethode im System auf, die die Schlüsselwächter-View-Mediator-Klasse
verwendet.
Wie in diesem Sequenzdiagramm zu sehen ist, drückt der Benutzer die physische Taste des Android-Geräts.
Das Android-Gerät sendet also ein "Taste plus"-Ereignis an seinen Input Dispatcher.
Der Input-Dispatcher sendet eine Nachricht zur Aktivierung des Schlüssels an den Fenster-Manager und die Telefon-Fenster-Manager-Klasse sendet
nach der Verarbeitung eine Nachricht zur Aktivierung des Schlüsselwächter-Sicherheitsfensters an den Schlüsselwächter-Dienst.
Dann ruft der Schlüsselüberwachungsdienst die systemeigene Bereitschaftsmethode des Vermittlers der Schlüsselüberwachungsansicht auf.
Und dieser Prozess geschieht durch binder IPC binder in der Prozesskommunikation.
Der Binder-IPC wird also verwendet, weil der Schlüsselüberwachungsdienst sich in einem völlig anderen Prozess befindet, und
die System-UI ist wiederum ein weiterer Prozess, der mit diesen beiden Prozessen kommuniziert.
Wir brauchen Binder IPC.
In dieser Sitzung konzentrieren wir uns auf die wichtigsten UI-Module des Guard-Systems.
Schauen wir uns nun genauer an, was innerhalb des Systems geschieht.
UI hat Module.
Das folgende Sequenzdiagramm zeigt die Klassen und Methoden, die an der Anzeige des Sicherheitsfensters des Key Guard für
den Benutzer beteiligt sind.
Wie Sie sehen können, ist der Key Guard View Mediator die Klasse, die den Prozess innerhalb der System-UI auslöst.
Wie wir also im letzten Sequenzdiagramm gesehen haben, erhält der Key Guard View Mediator die Statusaktualisierung
vom Key Guard Service über Binder IPC.
Schauen wir uns nun an, was innerhalb der System-UI-Klassen passiert.
Sobald also die System-UI die Kontrolle erhält, ruft die Methode "All System Ready" die Methode "Handle System Ready" auf,
und die Methode "Handle System Ready" ruft die Taste "Guard Lock" auf, die wiederum "Show Log" aufruft, und "Show
Locked" ruft wiederum die Methode "Handle Show" auf, die Teil der Statusleiste ist.
Er hat View-Manager und wir denken, er hat View-Manager e ruft Show-Methode und die Show-Methode wiederum ruft
Show Bouncer oder Key Guard-Methode und die Show Bouncer oder Key Guard-Methode verwendet die Bouncer-Objekt und Bouncer, die
im Grunde ein Objekt der Key Guard Bouncer-Klasse ist.
Und es ruft die Prepare-Methode auf.
Die Prepare-Methode verwendet wiederum das Mock Guard View-Objekt und die Show-Primary-Security-Screen-Methode
in der Gig Guard Host View, und die Key Guard Host View ruft schließlich die Show-Primary-Security-Screen-Methode
auf, die wiederum das Key Guard Security Container-Objekt verwendet und die Show-Primary-Security-Screen-Methode aufruft.
Der Sicherheitscontainer key guard ruft die Methode show security screen auf und zeigt dem Endbenutzer schließlich
den Sicherheitsbildschirm an.
Dies war also ein kurzer Überblick über die Abfolge der Methoden und die an diesem Prozess beteiligten Klassen.
Im nächsten Abschnitt werden wir uns den Code genauer ansehen und diese Frage klären.