Android 10 für Entwickler

Android 10 basiert auf drei wichtigen Themen. Erstens ist Android 10 mit fortschrittlichem maschinellem Lernen und Unterstützung für neue Geräte wie faltbare Smartphones und 5G-fähige Smartphones die Vorreiterrolle im Bereich der mobilen Innovation. Bei Android 10 stehen Datenschutz und Sicherheit im Mittelpunkt – mit fast 50 Funktionen, die Nutzern mehr Schutz, Transparenz und Kontrolle bieten. Android 10 erweitert die Digital Wellbeing-Einstellungen der Nutzer, damit Einzelpersonen und Familien ein besseres Gleichgewicht zwischen Technologie finden können.

Hier erfährst du, was Android 10 für Entwickler enthält und wie du es schon heute nutzen kannst.

Innovation und neue Erfahrungen

Mit Android 10 kannst du die neuesten Hardware- und Softwareinnovationen nutzen, um fantastische Apps für deine Nutzer zu entwickeln.

Mit Android 10 kannst du deine Apps für faltbare Geräte und andere Geräte mit großem Display optimieren.

Faltbare Smartphones / Tablets

Android 10 baut auf der robusten Unterstützung des Mehrfenstermodus auf und erweitert das Multitasking über App-Fenster hinweg und bietet Bildschirmkontinuität, damit der App-Status auch dann erhalten bleibt, wenn das Gerät auf- oder zugeklappt wird. Android 10 enthält eine Reihe von Verbesserungen in onResume und onPause, um mehrere Fortsetzungen zu unterstützen und Ihre App zu benachrichtigen, wenn der Fokus liegt. Außerdem ändert sich die Funktionsweise des Manifestattributs resizeableActivity, damit du besser verwalten kannst, wie deine App auf faltbaren und großen Bildschirmen angezeigt wird. Damit du Apps für faltbare Geräte entwickeln kannst, kannst du in Android Studio einen Emulator für faltbare Geräte als virtuelles Gerät (AVD) konfigurieren. Weitere Informationen zur Optimierung deiner Apps für faltbare Geräte findest du im Entwicklerleitfaden.

5G-Netze

5G verspricht kontinuierlich höhere Geschwindigkeiten und geringere Latenzzeiten. Android 10 unterstützt 5G-Plattformen und erweitert vorhandene APIs, damit Sie diese Verbesserungen optimal nutzen können. Mithilfe von Konnektivitäts-APIs können Sie ermitteln, ob das Gerät eine Verbindung mit hoher Bandbreite hat, und prüfen, ob die Verbindung kostenpflichtig ist. Damit können Sie Ihre Apps und Spiele an Nutzer über 5G anpassen.

Intelligente Antwort in Benachrichtigungen

Android 10 nutzt ML auf dem Gerät, um Kontextaktionen in Benachrichtigungen vorzuschlagen, z. B. intelligente Antworten auf Nachrichten oder das Öffnen einer Karte für eine Adresse in der Benachrichtigung. Ihre Anwendungen können diese Funktion sofort nutzen, ohne dass Sie etwas tun müssen. Vom System bereitgestellte intelligente Antworten und Aktionen werden standardmäßig direkt in Benachrichtigungen eingefügt. Wenn Sie möchten, können Sie trotzdem Ihre eigenen Antworten und Aktionen angeben. Sie können intelligente Antworten einfach für einzelne Benachrichtigungen deaktivieren. Verwenden Sie dazu setAllowGeneratedReplies() und setAllowSystemGeneratedContextualActions().

Die Funktion „Intelligente Antwort“ kann basierend auf den Benachrichtigungsinhalten Aktionen vorschlagen.

Dunkles Design

Android 10 fügt ein systemweites dunkles Design hinzu, das sich ideal bei wenig Licht eignet und hilft, den Akku zu schonen. Nutzer können ein neues systemweites dunkles Design aktivieren, indem sie die Einstellungen aufrufen oder den Energiesparmodus aktivieren. Dadurch wird die System-UI in den dunklen Modus versetzt und das dunkle Design aktiviert. Du kannst ein benutzerdefiniertes dunkles Design für deine App erstellen oder die neue Funktion „Dunkles Design erzwingen“ aktivieren, mit der das System dynamisch eine dunkle Version aus deinem vorhandenen Design erstellen kann. Sie können auch die DayNight-Funktion von AppCompat nutzen, um Nutzern früherer Android-Versionen ein dunkles Design anzubieten. Weitere Informationen finden Sie im Entwicklerleitfaden.

Android 10 kann mit Force Dark dynamisch ein dunkles Design für deine App erstellen.

Bedienung über Gesten

Dank Bedienung über Gesten können Apps Inhalte im Vollbildmodus öffnen.

Mit Android 10 wird ein vollständig Gesten-Navigationsmodus eingeführt, der den Bereich der Navigationsleiste verschwindet und es Apps ermöglicht, den gesamten Bildschirm zu nutzen, um eine umfassendere, immersivere Nutzung zu bieten. Die vertrauten Navigationselemente „Zurück“, „Startbildschirm“ und „Letzte Apps“ werden durch Wischen am Rand und nicht durch die sichtbaren Schaltflächen beibehalten. Damit sich die Bedienung über Gesten nahtlos in die Bedienung über Gesten einbinden lässt, solltest du dich von Rand zu Rand bewegen und hinter der Navigationsleiste zeichnen, um ein immersives Erlebnis zu schaffen. Zur Implementierung sollten Apps die setSystemUiVisibility() API zur Darstellung im Vollbildmodus verwenden und dann WindowInsets entsprechend verarbeiten, damit wichtige Bereiche der Benutzeroberfläche nicht verdeckt werden. Beginnen Sie noch heute mit der Optimierung Ihrer Anwendung. Weitere Informationen finden Sie in unserer Blogpost-Reihe.

Steuerfelder für Einstellungen

Sie können wichtige Systemeinstellungen jetzt über eine neue Settings Panel API direkt im Kontext Ihrer App anzeigen. Ein Einstellungsbereich ist eine unverankerte Benutzeroberfläche, über die Sie Einstellungen aufrufen können, die Nutzer möglicherweise benötigen, z. B. Internetverbindung, NFC und Audiolautstärke. In einem Browser könnte beispielsweise ein Bereich mit Verbindungseinstellungen wie Flugmodus, WLAN (einschließlich nahe gelegener Netzwerke) und mobiler Daten angezeigt werden. Wenn Sie einen Einstellungsbereich aufrufen möchten, lösen Sie einfach einen Intent mit einer der neuen Settings.Panel-Aktionen aus.

Tastenkombinationen zum Teilen

Durch das Teilen von Verknüpfungen wird das Teilen von Inhalten schneller und einfacher, da Nutzer direkt zu einer anderen App wechseln können, um Inhalte zu teilen. Entwickler können Freigabeziele veröffentlichen, die eine bestimmte Aktivität in ihren Apps mit angehängten Inhalten starten. Diese Ziele werden den Nutzern in der Freigabe-UI angezeigt. Da sie im Voraus veröffentlicht werden, wird die Freigabe-UI sofort beim Start geladen. Das Teilen von Verknüpfungen ähnelt App-Verknüpfungen und verwendet dieselbe ShortcutInfo API. Die API wird auch in der ShareTarget AndroidX-Bibliothek unterstützt. Weitere Informationen finden Sie in der Beispiel-App.

Über Verknüpfungen können Nutzer direkt zu einer bestimmten Aktivität in Ihren Apps mit angehängten Inhalten springen.

Datenschutz für Nutzer

Datenschutz steht bei Android 10 im Mittelpunkt – angefangen bei stärkeren Schutzmaßnahmen auf der Plattform bis hin zu neuen Funktionen, bei denen der Datenschutz im Mittelpunkt steht. Aufbauend auf früheren Versionen enthält Android 10 umfangreiche Änderungen zum Schutz der Privatsphäre und bietet Nutzern mehr Kontrolle. Dazu gehören eine verbesserte System-UI, strengere Berechtigungen und Einschränkungen für die Datennutzung durch Apps. Weitere Informationen dazu, wie du diese in deinen Apps unterstützen kannst, findest du in den Datenschutzänderungen.

Nutzer können jetzt Zugriff auf den Standort gewähren, wenn die App im Vordergrund ausgeführt wird.

Mehr Kontrolle über Standortdaten – Nutzer haben durch eine neue Berechtigungsoption mehr Kontrolle über ihre Standortdaten. Sie können einer App jetzt nur Zugriff auf den Standort gewähren, wenn sie tatsächlich verwendet wird, also im Vordergrund ausgeführt wird. Bei den meisten Anwendungen bietet dies ein ausreichendes Maß an Zugriff, während es für Nutzer eine erhebliche Verbesserung in Transparenz und Kontrolle bedeutet. Weitere Informationen zu Standortänderungen findest du im Entwicklerleitfaden oder in unserem Blogpost.

Standortdaten bei Netzwerkscans schützen: Für die meisten APIs zum Scannen von Netzwerken war bereits die Berechtigung zur ungefähren Standortermittlung erforderlich. Android 10 erhöht den Schutz dieser APIs, da stattdessen die detaillierte Berechtigung zur Standortermittlung erforderlich ist.

Geräte-Tracking verhindern: Apps können nicht mehr auf nicht rücksetzbare Geräte-IDs zugreifen, die für das Tracking verwendet werden können, wie z. B. Geräte-IMEI, Seriennummer und ähnliche IDs. Auch die MAC-Adresse des Geräts wird standardmäßig zufällig ausgewählt, wenn es mit WLAN-Netzwerken verbunden ist. Lesen Sie die Best Practices, um die richtigen Kennzeichnungen für Ihren Anwendungsfall auszuwählen. Weitere Informationen finden Sie hier.

Nutzerdaten im externen Speicher sichern: Android 10 führt eine Reihe von Änderungen ein, die Nutzern mehr Kontrolle über Dateien im externen Speicher und die darin enthaltenen App-Daten geben. Anwendungen können ihre eigenen Dateien in ihren privaten Sandboxes speichern, müssen jedoch MediaStore verwenden, um auf freigegebene Mediendateien zuzugreifen, und die Systemdateiauswahl verwenden, um auf freigegebene Dateien in der neuen Downloadsammlung zuzugreifen. Weitere Informationen

Unerwünschte Unterbrechungen blockieren: Android 10 verhindert App-Starts im Hintergrund, die unerwartet in den Vordergrund springen und den Fokus von einer anderen App übernehmen. Weitere Informationen

Sicherheit

Android 10 bietet eine Reihe von Features, die Nutzer durch fortschrittliche Verschlüsselung, Plattformhärtung und Authentifizierung noch sicherer machen. Weitere Informationen zu Sicherheitsupdates für Android 10

Speicherverschlüsselung: Alle kompatiblen Geräte, die mit Android 10 auf den Markt gebracht wurden, müssen Nutzerdaten verschlüsseln. Um dies effizienter zu machen, enthält Android 10 unseren neuen Verschlüsselungsmodus Adiantum.

Standardmäßig TLS 1.3: Unter Android 10 wird außerdem standardmäßig TLS 1.3 aktiviert. Dies ist eine neue Version des TLS-Standards mit Leistungsvorteilen und erhöhter Sicherheit.

Plattformhärtung: Android 10 umfasst auch eine Härtung für mehrere sicherheitskritische Bereiche der Plattform.

Verbessertes biometrisches Verfahren: Android 10 erweitert das Framework BiometricPrompt, um passive Authentifizierungsmethoden wie das Gesicht zu unterstützen und implizite und explizite Authentifizierungsabläufe hinzuzufügen. Beim expliziten Ablauf muss der Nutzer die Transaktion während der Authentifizierung ausdrücklich im TEE bestätigen. Der implizite Ablauf ist eine einfachere Alternative für Transaktionen mit passiver Authentifizierung. Android 10 verbessert auch das Fallback für Geräteanmeldedaten bei Bedarf. Weitere Informationen

Kamera und Medien

Dynamische Tiefe für Fotos

Apps können jetzt ein dynamisches Tiefenbild anfordern, das aus JPEG- und XMP-Metadaten mit tiefenbezogenen Elementen sowie einer in dieselbe Datei eingebetteten Tiefen- und Konfidenzkarte besteht. Damit kannst du in deiner App spezielle Unkenntlichmachungen und Bokeh-Optionen anbieten. „Dynamische Tiefe“ ist ein offenes Format, das wir gemeinsam mit unseren Partnern auch auf Geräten mit Android 10 und höher anbieten können.

Mit der Funktion „Dynamische Tiefenbild“ kannst du in deiner App spezielle Optionen für Unkenntlichmachung und Bokeh-Effekt anbieten.

Aufnahme der Audiowiedergabe

Jetzt kann jede App, die Audio wiedergibt, anderen Apps erlauben, den Audiostream mithilfe einer neuen API für die Audiowiedergabe zu erfassen. Die API unterstützt nicht nur Untertitel, sondern auch gängige Anwendungsfälle wie das Livestreaming von Spielen. Bei der Entwicklung dieser neuen Funktion haben wir den Datenschutz und den Urheberrechtsschutz berücksichtigt. Daher ist die Fähigkeit einer App, das Audio einer anderen App aufzunehmen, eingeschränkt. So haben die Apps die volle Kontrolle darüber, ob ihre Audiostreams aufgezeichnet werden. Weitere Informationen finden Sie in diesem Blogpost.

Neue Audio- und Video-Codecs

Android 10 unterstützt den Open-Source-Video-Codec AV1, mit dem Medienanbieter Videoinhalte in hoher Qualität mit geringerer Bandbreite auf Android-Geräte streamen können. Darüber hinaus unterstützt Android 10 die Audiocodierung mit Opus, einem offenen, gebührenfreien Codec, der für Sprach- und Musikstreaming optimiert ist, sowie HDR10+ für High Dynamic Range-Videos auf Geräten, die dies unterstützen. Die MediaCodecInfo API bietet eine einfachere Möglichkeit, die Video-Rendering-Funktionen eines Android-Geräts zu ermitteln. Für jeden Codec können Sie eine Liste der unterstützten Größen und Framerates abrufen.

Native MIDI API

Für Apps, die die Audioverarbeitung in C++ ausführen, wird mit Android 10 eine native MIDI API eingeführt, um mit MIDI-Geräten über das NDK zu kommunizieren. Diese API ermöglicht das Abrufen von MIDI-Daten innerhalb eines Audio-Callbacks mithilfe eines nicht blockierenden Lesevorgangs, wodurch eine Verarbeitung von MIDI-Nachrichten mit niedriger Latenz ermöglicht wird. Probieren Sie es mit der Beispiel-App und dem Quellcode aus.

Richtmikrofone, zoombare Mikrofone

Unter Android 10 hast du dank der neuen Mikrofonrichtung API mehr Kontrolle über Audioaufnahmen. Mit der API können Sie eine bevorzugte Mikrofonrichtung festlegen, wenn Sie eine Audioaufnahme aufnehmen. Wenn der Nutzer beispielsweise ein Selfie-Video aufnimmt, können Sie für die Audioaufnahme das nach vorne gerichtete Mikrofon anfordern (sofern vorhanden). Darüber hinaus bietet diese API eine standardisierte Möglichkeit zur Steuerung zoombarer Mikrofone. So hat Ihre App die Kontrolle über die Dimension des Aufzeichnungsfelds.

Vulkan überall

Android 10 erweitert die Wirkung von Vulkan durch unsere Implementierung der plattformübergreifenden API mit geringem Overhead für leistungsstarke 3D-Grafiken. Vulkan 1.1 ist jetzt für alle 64-Bit-Geräte mit Android 10 und höher erforderlich und eine Empfehlung für alle 32-Bit-Geräte. Die Unterstützung von Vulkanen ist in der Branche bereits deutlich zu beobachten: Unter den Geräten mit Android N oder höher unterstützen 53 % Vulkan 1.0.3 oder höher. Mit der neuen Anforderung in Android 10 erwarten wir, dass sich die Akzeptanz im kommenden Jahr weiter verbessern wird.

Konnektivität

Verbesserte Peer-to-Peer- und Internetverbindung

Wir haben den WLAN-Stack umgestaltet, um Datenschutz und Leistung zu verbessern und gängige Anwendungsfälle wie die Verwaltung von IoT-Geräten und das Vorschlagen von Internetverbindungen zu verbessern, ohne dass die Berechtigung zur Standortermittlung erforderlich ist. Die APIs für Netzwerkverbindungen erleichtern die Verwaltung von IoT-Geräten über lokales WLAN für Peer-to-Peer-Funktionen wie Konfigurieren, Herunterladen oder Drucken. Über die APIs für Netzwerkvorschläge können Apps dem Nutzer bevorzugte WLANs für die Internetverbindung anzeigen.

WLAN-Leistungsmodi

Apps können jetzt adaptives WLAN anfordern, indem sie Modi für hohe Leistung und niedrige Latenz aktivieren. Dies kann ein großer Vorteil sein, wenn eine niedrige Latenz für die Nutzererfahrung wichtig ist, wie z. B. Echtzeitspiele, aktive Sprachanrufe und ähnliche Anwendungsfälle. Die Plattform arbeitet mit der Gerätefirmware, um die Anforderung mit dem niedrigsten Stromverbrauch zu erfüllen. Rufen Sie zur Verwendung der neuen Leistungsmodi WifiManager.WifiLock.createWifiLock() mit WIFI_MODE_FULL_LOW_LATENCY oder WIFI_MODE_FULL_HIGH_PERF auf. In diesen Modi arbeitet die Plattform mit der Geräte-Firmware zusammen, um die Anforderung mit dem niedrigsten Stromverbrauch zu erfüllen.

Android-Grundlagen

ART-Optimierungen

Verbesserungen an der ART-Laufzeit tragen dazu bei, dass Ihre Anwendungen schneller starten, weniger Arbeitsspeicher verbrauchen und flüssiger laufen, ohne dass Sie etwas tun müssen. Mit ART-Profilen, die von Google Play bereitgestellt werden, kann ART Teile Ihrer App vorkompilieren, noch bevor sie ausgeführt wird. Zur Laufzeit fügt Android 10 dem Garbage Collector von ART die automatische Speicherbereinigung hinzu, um Zeit und CPU-Leistung zu reduzieren, Verzögerungen zu reduzieren und die Ausführung von Apps auf Low-End-Geräten zu verbessern.

Dieses Diagramm zeigt die prozentuale Verbesserung der Startzeit für bestimmte Apps beim Testen mit Play-Profilen.

Neural Networks API 1.2

Neben einer Reihe von Leistungsoptimierungen haben wir 60 neue Vorgänge hinzugefügt, darunter ARGMAX, ARGMIN und quantisiertes LSTM. Damit schaffen Sie die Grundlage für eine viel größere Auswahl an Modellen, z. B. für die Objekterkennung und Bildsegmentierung. Wir arbeiten mit Hardwareanbietern und gängigen Frameworks für maschinelles Lernen wie TensorFlow zusammen, um die Unterstützung für NNAPI 1.2 zu optimieren und bereitzustellen.

Thermal API

Wenn Geräte zu warm werden, können sie CPU und/oder GPU drosseln, was sich unerwartet auf Apps und Spiele auswirken kann. In Android 10 können Apps und Spiele jetzt eine Thermo-API verwenden, um Änderungen am Gerät zu überwachen und Maßnahmen zu ergreifen, um die normale Temperatur wiederherzustellen. Streaming-Apps können beispielsweise die Auflösung/Bitrate oder den Netzwerkverkehr reduzieren, eine Kamera-App könnte Flash oder die intensive Bildoptimierung deaktivieren oder ein Spiel könnte die Framerate oder Polygon-Tesselierung reduzieren. Weitere Informationen

Kompatibilität über öffentliche APIs

Unter Android 10 werden die Einschränkungen für Nicht-SDK-Schnittstellen weiter erweitert, sodass Apps nach und nach ausschließlich öffentliche APIs verwenden. Wenn eine von Ihnen derzeit verwendete Schnittstelle eingeschränkt ist, können Sie stattdessen eine neue öffentliche API für diese Schnittstelle anfordern. Damit du die Umstellung einfacher vornehmen und Fehler in deinen Apps vermeiden kannst, aktivieren wir die Einschränkungen nur, wenn deine App auf Android 10 (API 29) ausgerichtet ist. Weitere Informationen zu den Einschränkungen finden Sie im Entwicklerleitfaden.

Schnellere Updates, aktuellerer Code

Android 10 wurde für schnellere Updates über Project Treble entwickelt, das eine einheitliche, testbare Schnittstelle zwischen Android und dem zugrunde liegenden Gerätecode von Geräteherstellern und Siliziumherstellern bietet. Mit Treble können Gerätehersteller Android 10 schneller und kostengünstiger auf Treble-kompatible Geräte übertragen.

Android 10 ist außerdem die erste Version, die Project Mainline (offizieller Name Google Play-Systemupdates) unterstützt. Diese neue Technologie zum Schutz von Android-Nutzern und zur Aktualisierung ihrer Geräte mit wichtigen Codeänderungen – direkt von Google Play. Mit Google Play-Systemupdates können wir bestimmte interne Komponenten auf allen Geräten mit Android 10 und höher aktualisieren, ohne dass ein vollständiges Systemupdate des Geräteherstellers erforderlich ist.

Für Entwickler gehen wir davon aus, dass diese Updates in Android 10 dazu beitragen, die Plattformimplementierung allgemein auf allen Geräten einheitlicher zu gestalten, und im Laufe der Zeit eine größere Einheitlichkeit zur Folge haben, durch die sich die Entwicklungs- und Testkosten senken lassen.

Jetzt starten

Vollständige Entwicklerressourcen für Android 10 findest du unter developer.android.com/10.