Android Java Programming arbeitet mit einem Konzept der Message-Passing , in dem Ausführungs-Threads in einem Programm Pass Nachrichten von ausführbaren Code zwischen miteinander , um bestimmte Aufgaben zu erfüllen oder pflegen die Kommunikation zwischen den verschiedenen Teilen der Anwendung. Die " Handler" Klasse , zusammen mit seiner " MessageQueue " Klasse , organisieren , durchführen und versandfertig Nachrichten und ausführbare Objekte durch den Code . Jeder Thread in einem Android- Programm kann eine Handler -Klasse für den alleinigen Zweck der Umgang mit Daten und Nachrichten. Android Runnable Klasse
" Runnable " -Klasse stellt eine Schnittstelle für den " Thread" -Klasse. Klassen implementieren können, die Runnable -Klasse , so dass Programme können Instanzen dieser Klasse als laufende Threads auszuführen. Mit der Schnittstelle Runnable bedeutet, dass eine Klasse kann gleichzeitig mit anderen Klassen , so dass mehrere Instanzen der Klasse Ausführung kann zur gleichen Zeit auftreten. Android -Programme , durch Handlers können ausführbare Objekte als Nachrichten weiterzugeben.
Android Meldeklasse
Android "Message "-Klasse erleichtert die Weitergabe von Daten innerhalb der Android -Code . A Message-Objekt enthält eine beliebige Daten -Objekt, das entlang einer Handler -Objekt übergeben werden kann , zusammen mit dem Programmierer definierte Informationen über die Art der Daten innerhalb des Objekts . Message-Objekte enthalten auch Methoden, um Daten aus anderen Quellen erhalten, die als eine Art " Pass " Medium, durch das Daten und Meta-Daten programmgesteuert zwischen Programmen und Handler-Objekte übergeben werden.
Android MessageQueue und Looper Klassen
" MessageQueue " und " Looper " Klassen dienen als Schnittstellen für die Verarbeitung von Nachrichten und Daten in einem Thread der Ausführung . Die MessageQueue und Looper Klassen nehmen Nachrichten geschickt, um einem einzigen Thread der Ausführung. Diese Meldungen werden durch Objekte der Message-Klasse vertreten. Die MessageQueue hält eine Liste dieser Message-Objekte , während die Looper Klasse durchläuft sie für die Verarbeitung durch den aktuellen Thread der Ausführung.
Handlers
Handler -Objekt ermöglicht die Programmierer zu senden und Nachrichten abrufen und lauffähig Objekte aus MessageQueues mit einem Thread der Ausführung verbunden. Message-Objekte von anderen Threads oder ausführbare Threads an den aktuellen Thread der Ausführung , sind mit dem Handler durch die MessageQueue gesendet und ausgeführt durch den Hundeführer . Alle ausgehenden Nachrichten werden durch die Handler-Objekte auf ihrem Weg zu den MessageQueue gehen . Jeder Thread der Ausführung eines Programms wird ein Handler -Objekt zugeordnet ist, zusammen mit einem einzigen MessageQueue .
Wie die Handler
Works The Handler -Instanz in einem Thread wird Runnable und Message-Objekte durch die MessageQueue erhalten . Methoden werden dann durch den Programmierer auf bestimmte Objekte verarbeiten aufgerufen . Zum Beispiel nimmt die "post "-Methode Runnable Objekte und stellt sie in der MessageQueue . Ebenso erreichen die " sendMessage " Methoden die gleiche Sache mit Message-Objekte . Abweichungen von diesen Methoden zu spezifizieren , wenn ein Handler MessageQueue Prozesse Runnable oder Message-Objekte .