Android-Anwendungskomponenten
Anwendungskomponenten sind die grundlegenden Bausteine einer Android-Anwendung. Diese Komponenten werden lose durch die Manifestdatei der Anwendung organisiert. AndroidManifest.xml beschreibt jede Komponente der Anwendung und wie sie interagieren.
Die folgenden sind die vier Hauptkomponenten, die in einer Android-Anwendung verwendet werden können.
| Komponente | Beschreibung |
|---|---|
| Aktivitäten | Beschreibt die UI und verarbeitet die Interaktion zwischen dem Benutzer und dem Gerätebildschirm. |
| Dienste | Verarbeitet Hintergrundvorgänge, die mit der Anwendung verbunden sind. |
| Broadcast-Empfänger | Verarbeitet die Kommunikation zwischen dem Android-Betriebssystem und der Anwendung. |
| Content-Provider | Behandelt Fragen im Zusammenhang mit Daten- und Datenbankverwaltung. |
Aktivitäten
Eine Aktivität identifiziert einen einzelnen Bildschirm mit einer Benutzeroberfläche. Beispielsweise kann eine E-Mail-Anwendung eine Aktivität zum Anzeigen einer Liste neuer E-Mails enthalten, eine weitere Aktivität zum Verfassen einer E-Mail und noch eine weitere Aktivität zum Lesen einer E-Mail. Wenn eine Anwendung mehr als eine Aktivität hat, wird eine davon als diejenige markiert, die beim Start der Anwendung angezeigt wird.
Eine Aktivität istActivityeine Unterklasse der Klasse, wie unten gezeigt:
public class MainActivity extends Activity {
}
Dienste
Ein Dienst ist eine Komponente, die im Hintergrund ausgeführt wird, um lang andauernde Vorgänge durchzuführen. Beispielsweise kann ein Dienst im Hintergrund Musik abspielen, während der Benutzer ein anderes Programm verwendet, oder Daten über das Netzwerk in einer Aktivität abrufen, ohne die Benutzerinteraktion zu blockieren.
Ein Dienst istServiceeine Unterklasse der Klasse, wie unten gezeigt:
public class MyService extends Service {
}
Broadcast-Empfänger
Ein Broadcast-Empfänger reagiert einfach auf Broadcast-Nachrichten, die von anderen Anwendungen oder dem System gesendet werden. Beispielsweise kann eine Anwendung einen Broadcast initiieren, um anderen Anwendungen mitzuteilen, dass einige Daten auf das Gerät heruntergeladen wurden und für sie zur Verwendung verfügbar sind. Daher fängt der Broadcast-Empfänger diese Kommunikation ab und ergreift geeignete Maßnahmen.
Ein Broadcast-Empfänger istBroadcastReceivereine Unterklasse der Klasse, und jede Nachricht wird in Form einesIntent-Objekts gesendet.
public class MyReceiver extends BroadcastReceiver {
}
Content-Provider
Die Content-Provider-Komponente stellt Daten von einer Anwendung für eine andere Anwendung über Anforderungen bereit. Diese Anforderungen werden von Methoden der KlasseContentResolververarbeitet. Diese Daten können im Dateisystem, in einer Datenbank oder an anderer Stelle gespeichert werden.
Ein Content-Provider istContentProvidereine Unterklasse der Klasse, und er implementiert eine Reihe von Standard-APIs, damit andere Anwendungen Transaktionen ausführen können.
public class MyContentProvider extends ContentProvider {
}
Wir werden die Anwendungskomponenten in separaten Kapiteln mit den Details dieser Tags behandeln.
Ergänzende Komponenten
Es gibt einige ergänzende Komponenten, die verwendet werden, um die oben genannten Entitäten, die Logik zwischen ihnen und die Verbindungen zwischen ihnen zu konstruieren. Diese Komponenten sind wie folgt:
| Komponente | Beschreibung |
|---|---|
| Fragmente | Repräsentiert ein Verhalten in einer Aktivität oder einen Teil der Benutzeroberfläche. |
| Views | UI-Elemente, die auf dem Bildschirm gezeichnet werden, einschließlich Schaltflächen, Listen usw. |
| Layouts | Eine Vererbung von View, die das Bildschirmlayout steuert und das Erscheinungsbild von Views anzeigt. |
| Intents | Nachrichtenverbindungen zwischen Komponenten. |
| Ressourcen | Externe Elemente wie String-Ressourcen, Konstanten-Ressourcen und Bildressourcen. |
| Manifest | Die Konfigurationsdatei der Anwendung. |