Glossar der Android-Plattform

In der folgenden Liste finden Sie die grundlegende Terminologie des Open-Source-Projekts für Android (Android Open Source Project, AOSP). Weitere Quellen für Definitionen wichtiger Begriffe:

Unter Code mit Respekt finden Sie Beispiele für Terminologie, die für ein inklusiveres Ökosystem verwendet und vermieden werden sollte.

Apps

APK-Datei (.apk)
Android-App-Paketdatei mit der Erweiterung .apk. Jede Android-App wird kompiliert und in einer einzelnen Datei verpackt, die den gesamten Code der App (DEX-Dateien mit der Erweiterung .dex), Ressourcen, Assets und die Manifestdatei enthält. Die App-Paketdatei kann einen beliebigen Namen haben, muss aber die Erweiterung .apk verwenden, z. B. myExampleAppname.apk. Der Einfachheit halber wird eine App-Paketdatei oft als APK bezeichnet.

Verwandt: App

Aktion
Eine Beschreibung einer Aufgabe, die ein Intent-Absender ausführen möchte. Eine Aktion ist ein Stringwert, der einem Intent zugewiesen ist. Aktionsstrings können von Android oder einem Drittanbieter-Entwickler definiert werden. Beispiele: android.intent.action.VIEW für eine Web-URL oder com.example.rumbler.SHAKE_PHONE für eine benutzerdefinierte App, um das Smartphone vibrieren zu lassen.

Verwandt: Intent

Aktivität
Ein einzelner Bildschirm in einer App mit unterstützendem Java-Code, der von der Activity Klasse abgeleitet ist. In den meisten Fällen wird eine Aktivität durch ein Vollbildfenster dargestellt, das UI-Ereignisse empfangen und verarbeiten sowie komplexe Aufgaben ausführen kann, da es das Fenster verwendet, um das Fenster zu rendern. Eine Aktivität ist in der Regel im Vollbildmodus, kann aber auch schwebend oder transparent sein.
App
Aus Sicht einer Komponente besteht eine Android-App aus einer oder mehreren Aktivitäten, Diensten, Listenern und Intent-Empfängern. Aus Sicht einer Quelldatei besteht eine Android-App aus Code, Ressourcen, Assets und einem einzelnen Manifest. Während der Kompilierung werden diese Dateien in einer einzelnen Datei verpackt, die als App-Paketdatei (APK) bezeichnet wird.

Verwandt: APK-Datei (.apk), Aktivität

Übertragungsempfänger
Ein Objekt, das auf der BroadcastReceiver Klasse basiert und auf Intents wartet, die übertragen werden, anstatt an eine einzelne Ziel-App oder -Aktivität gesendet zu werden. Das System sendet einen Übertragungs-Intent an alle interessierten Übertragungsempfänger, die die Intents sequenziell verarbeiten.

Verwandt: Intent, Intent Filter

Contentanbieter
Eine Datenabstraktionsebene, mit der Sie die Daten Ihrer App sicher für andere Apps freigeben können. Ein Contentanbieter basiert auf der ContentProvider Klasse, die Content- Abfragestrings eines bestimmten Formats verarbeitet, um Daten in einem bestimmten Format zurückzugeben. Weitere Informationen finden Sie unter Contentanbieter.

Verwandt: URIs in Android

Kleines Fenster
Ein schwebendes Fenster, das als einfaches Formular dient. Ein kleines Fenster kann nur Schaltflächensteuerelemente haben und ist für die Ausführung einer einfachen Aktion (z. B. Auswahl einer Schaltfläche) und möglicherweise die Rückgabe eines Werts vorgesehen. Ein kleines Fenster soll nicht im Verlaufsstack gespeichert werden, ein komplexes Layout enthalten, oder komplexe Aktionen ausführen. Android bietet ein einfaches Standarddialogfeld mit optionalen Schaltflächen. Sie können aber auch ein eigenes Dialogfeldlayout definieren. Die Basisklasse für Dialogfelder ist Dialog.

Verwandt: Aktivität

Intent
Ein Nachrichtenobjekt, mit dem Sie andere Apps oder Aktivitäten asynchron starten oder mit ihnen kommunizieren können. Ein Intent-Objekt ist eine Instanz der Intent Klasse. Es enthält mehrere Kriterienfelder, die Sie angeben können, um zu bestimmen, welche App oder Aktivität den Intent empfängt und was der Empfänger bei der Verarbeitung des Intents tut. Zu den verfügbaren Kriterien gehören die gewünschte Aktion, eine Kategorie, ein Datenstring, der MIME-Typ der Daten und eine Verarbeitungsklasse. Eine App sendet einen Intent an das Android-System, anstatt ihn direkt an eine andere App oder Aktivität zu senden. Die App kann den Intent an eine einzelne Ziel-App senden oder als Übertragung senden, die wiederum von mehreren Apps sequenziell verarbeitet werden kann. Das Android-System ist dafür verantwortlich, den bestmöglichen Empfänger für jeden Intent zu ermitteln. Dabei werden die im Intent angegebenen Kriterien und die von anderen Apps definierten Intent-Filter berücksichtigt. Weitere Informationen finden Sie unter Intents und Intent-Filter.

Verwandt: Intent-Filter, Übertragungsempfänger

Intent-Filter
Ein Filterobjekt, das eine App in ihrer Manifestdatei deklariert, um dem System mitzuteilen, welche Arten von Intents die einzelnen Komponenten akzeptieren und welche Kriterien dabei gelten. Über einen Intent-Filter kann eine App Interesse an bestimmten Datentypen, Intent-Aktionen, URI-Formaten, usw. bekunden. Beim Auflösen eines Intents wertet das System alle verfügbaren Intent-Filter in allen Apps aus und übergibt den Intent an die App oder Aktivität, die am besten mit dem Intent und den Kriterien übereinstimmt. Weitere Informationen finden Sie unter Intents und Intent-Filter.

Verwandt: Intent, Übertragungsempfänger

Ressourcen
Nicht programmatische App-Komponenten, die sich außerhalb des kompilierten App-Codes befinden, aber über ein bekanntes Referenzformat aus dem App-Code geladen werden können. Android unterstützt eine Vielzahl von Ressourcentypen. Die Ressourcen einer typischen App bestehen jedoch aus UI Strings, UI-Layoutkomponenten, Grafiken oder anderen Mediendateien usw. Eine App verwendet Ressourcen, um die Lokalisierung und verschiedene Geräteprofile und ‑zustände effizient zu unterstützen. Eine App enthält beispielsweise einen separaten Satz von Ressourcen für jedes unterstützte Gebietsschema oder jeden unterstützten Gerätetyp und Layoutressourcen, die speziell für die aktuelle Bildschirmausrichtung (Querformat oder Hochformat) gelten. Weitere Informationen zu Ressourcen finden Sie unter App-Ressourcen – Übersicht. Die Ressourcen einer App werden immer in den res/* Unterordnern des Projekts gespeichert.
Dienst
Ein Objekt der Klasse Service das im Hintergrund ausgeführt wird (ohne UI-Präsenz), um verschiedene dauerhafte Aktionen auszuführen, z. B. Musik abzuspielen oder die Netzwerkaktivität zu überwachen.

Verwandt: Aktivität

URIs in Android
Android verwendet URI-Strings (Uniform Resource Identifier) als Grundlage für das Anfordern von Daten in einem Contentanbieter (z. B. zum Abrufen einer Kontaktliste) und für das Anfordern von Aktionen in einem Intent (z. B. zum Öffnen einer Webseite in einem Browser). Das URI Schema und ‑Format sind je nach Verwendungstyp unterschiedlich. Eine App kann bestimmte URI-Schemas und ‑Strings auf beliebige Weise verarbeiten. Einige URI-Schemas sind für Systemkomponenten reserviert. Anfragen nach Daten von einem Contentanbieter müssen beispielsweise content:// verwenden. In einem Intent werden URIs mit einem http:// Schema vom Browser verarbeitet.

Build

adb
Android Debug Bridge, eine Befehlszeilen-Debugging-App, die im SDK enthalten ist. adb bietet Tools zum Durchsuchen des Geräts, zum Kopieren von Tools auf das Gerät und zum Weiterleiten von Ports für das Debugging. Wenn Sie in Android Studio entwickeln, adb ist in Ihre Entwicklungsumgebung integriert. Das Akronym wird im Klartext in Kleinbuchstaben geschrieben. Wenn Sie sich speziell auf den Befehl beziehen, wird er als adb geschrieben. Weitere Informationen finden Sie unter Prüfen, ob Sie fastboot und adb.
Android-Projekt
Ein Git-Repository auf einem Android-Gerrit-Host. Weitere Informationen zur Funktionsweise von Git finden Sie unter Git-Quellcodeeditor.

Verwandt: Git-Repository

Build-Fingerprint
Ein eindeutiger, für Menschen lesbarer String mit Herstellerinformationen, der für jeden Build ausgegeben wird. Weitere Informationen finden Sie unter OTA-Pakete erstellen.
Git-Zweig – kanonisch
Unterschiedliche Versionen für jedes Git-Repository, z. B. android-11.0.0_r1, verfügbar unter cs.android.com/android/platform/superproject/+/android-11.0.0_r1. Weitere Informationen finden Sie unter Git Branching – Zweige im Überblick.
Git-Zweig – lokal
Ein temporärer Zweig im aktuellen Repo-Client, um Codeänderungen vorzunehmen. Er wird mit dem repo start branch-name . Befehl gestartet. Dies ist eine aktive Entwicklungsreihe. Der letzte Commit in einem Zweig wird als Spitze dieses Zweigs bezeichnet.
Git-Repository
Manchmal auch als Projekt bezeichnet. Ein Teil der Codebasis, der eine bestimmte Komponente oder einen bestimmten Gerätetyp darstellt, z. B. frameworks/base oder platform/packages/apps/Car/Media.

Verwandt: Android-Projekt

Manifestdatei
Eine XML-Datei, die eine Gruppierung von Git-Repositories pro Zweig, die Git-Revisionen, bei denen diese Repositorys ausgecheckt werden sollen, und ihr Layout in einem Dateisystem beschreibt. Diese XML-Datei, in der Regel default.xml, ist einem Repo-Zweig zugeordnet und beschreibt die Git-Repositories und Git-Zweige, die ausgecheckt werden, wenn Sie den Repo-Zweig initialisieren und synchronisieren. Diese Datei definiert die verschiedenen Git-Repositories, die das Repo-Tool in einem Repo-Client Checkout abrufen soll, um ein Produkt wie Android Automotive OS zu erstellen. Alle Manifeste finden Sie unter android.googlesource.com/platform/manifest/+refs. Das Standardmanifest, das in Manifestdateien enthalten ist, um Android-Plattformdateien (AOSP) abzurufen, finden Sie unter android.googlesource.com/platform/manifest/+/refs/heads/android17-release/default.xml. Informationen zu Apps finden Sie unter App Manifest – Übersicht und Informationen zur Plattformentwicklung unter Repo Manifestformat.
Over-the-air-Update (OTA)
Android-Geräte können Over-the-air-Updates (OTA) für das System, die App-Software und die Zeitzonenregeln empfangen und installieren. Weitere Informationen finden Sie unter OTA-Updates.
Repo-Zweig
Eine Sammlung von Git-Repositories, die in einer Manifestdatei erfasst sind und eine Version (Build) der Android-Codebasis darstellen, z. B. android11-gsi oder aosp-android-games-sdk. Sie werden mit den Befehlen repo init und repo sync heruntergeladen. In der Beschreibung der Manifestdatei finden Sie Links zu allen Manifestdateien und mit der Android-Codesuche können Sie nach den zugehörigen Builds suchen.
uprev
Im Allgemeinen aktualisiert „uprev“ ein untergeordnetes Teilprojekt eines größeren Projekts auf eine neuere Version. Ein „uprev“ ändert eine Revisionsstufe entweder auf die nächste inkrementierte Version oder auf die neueste verfügbare Version. Bei einem HIDL-Paket wird durch ein „uprev“ der Nebenversion das neue Paket auf eine höhere Nebenversion aktualisiert, wobei der Name und die Hauptversion des alten Pakets beibehalten werden, um die Abwärtskompatibilität auf Paketebene zu gewährleisten. Bei der Bootloader Konfiguration, aktualisiert ein „uprev“ die Unterstützung für die Boot-Header-Version auf die neueste Version.

Plattform

Android Runtime (ART) und Dalvik
Android Runtime (ART) ist die verwaltete Laufzeitumgebung, die von Apps und einigen System diensten unter Android verwendet wird. ART ist die Standardlaufzeitumgebung für Geräte mit Android 5.0 (API-Level 21) und höher. ART und der Vorgänger Dalvik wurden ursprünglich speziell für das Open-Source-Projekt für Android entwickelt. ART führt als Laufzeitumgebung das Dalvik Executable-Format und die Dex-Bytecode-Spezifikation aus. ART und Dalvik sind kompatible Laufzeitumgebungen die Dex-Bytecode ausführen. Apps, die für Dalvik entwickelt wurden, sollten daher auch mit ART funktionieren.
DEX-Datei (.dex)
Kompilierte Android-App-Codedatei. Android-Programme werden in Dalvik Executable-Dateien (DEX) mit der Erweiterung .dex kompiliert, die wiederum auf dem Gerät in einer einzelnen APK-Datei gezippt werden. DEX-Dateien können durch automatische Übersetzung von kompilierten Apps erstellt werden, die in der Programmiersprache Java geschrieben wurden.