Apps zu Android 11 migrieren

Mit jeder Android-Version führen wir neue Funktionen sowie Verhaltensänderungen ein, die Android noch nützlicher, sicherer und leistungsstärker machen. In vielen Fällen funktioniert Ihre App standardmäßig wie erwartet. In anderen Fällen müssen Sie Ihre App an die Plattformänderungen anpassen.

Da Nutzer die neue Plattform erhalten können, sobald der Quellcode im Android Open-Source-Projekt (AOSP) veröffentlicht wird, ist es wichtig, dass Apps bereit sind, erwartungsgemäß funktionieren und idealerweise neue Funktionen und APIs nutzen, um die neue Plattform optimal zu nutzen.

Dieses Dokument bietet einen Überblick über typische Entwicklungs- und Testphasen, damit du einen Plan für deine Bereitschaft erstellen kannst, der gut mit dem Zeitplan für die Veröffentlichung der Plattform übereinstimmt und eine großartige Erfahrung für deine Nutzer unter Android 11 gewährleistet.

Eine typische Migration besteht aus zwei Phasen, die gleichzeitig stattfinden können:

  • Sicherstellung der App-Kompatibilität (bis zum finalen Release von Android 11)
  • Ausrichtung auf die neuen Plattformfunktionen und APIs (so schnell wie möglich nach dem endgültigen Release)

Auf dieser Seite werden die allgemeinen Schritte für jede dieser Phasen beschrieben. Wenn du startklar bist, lies den Artikel Android 11 herunterladen.

Kompatibilität mit Android 11 sicherstellen

Es ist wichtig, die Funktionalität deiner vorhandenen App mit Android 11 zu testen, damit Nutzer, die auf die neueste Android-Version aktualisieren, zufrieden sind. Einige Plattformänderungen können sich auf das Verhalten Ihrer App auswirken. Daher ist es wichtig, frühzeitig und gründlich zu testen und dann die App gegebenenfalls anzupassen.

In der Regel können Sie Ihre Anwendung anpassen und ein Update veröffentlichen, ohne die targetSdkVersion der Anwendung ändern zu müssen. Sie sollten auch keine neuen APIs verwenden oder die compileSdkVersion der Anwendung ändern. Dies kann jedoch davon abhängen, wie Ihre App aufgebaut ist und welche Plattformfunktionen sie nutzen. In den folgenden Abschnitten werden die einzelnen Schritte beschrieben.

Bevor du beginnst, solltest du dich mit den Verhaltensänderungen vertraut machen, die sich auf deine Anwendung auswirken können, auch wenn du ihre targetSdkVersion nicht änderst.

Kompatibilitätstests durchführen

Das Testen der Kompatibilität mit Android 11 ähnelt in den meisten Fällen den Tests, die Sie sonst bei der Veröffentlichung Ihrer App durchführen. Dies ist ein guter Zeitpunkt, um die Qualitätsrichtlinien für Apps und die Best Practices für Tests zu lesen.

Installiere einfach deine aktuell veröffentlichte App auf einem Gerät mit Android 11 und durchläuft alle Abläufe und Funktionen auf der Suche nach Problemen. Damit du deine Tests gezielter testen kannst, solltest du dir die in Android 11 eingeführten Verhaltensänderungen durchlesen, die die Funktion deiner App beeinflussen oder zum Absturz der App führen können. Du solltest dir insbesondere die wichtigen Änderungen beim Datenschutz ansehen und alle Fehlerbehebungen testen, die du zur Anpassung der Änderungen implementiert hast.

Prüfen Sie außerdem die Verwendung eingeschränkter Nicht-SDK-Schnittstellen und testen Sie diese auf die Verwendung öffentlicher SDK- oder NDK-Entsprechungen. Achten Sie auf Logcat-Warnungen, die auf diese Zugriffe hinweisen, und verwenden Sie die StrictMode-Methode detectNonSdkApiUsage(), um sie programmatisch abzufangen.

Teste die Bibliotheken und SDKs in deiner App vollständig, um sicherzustellen, dass sie unter Android 11 wie erwartet funktionieren und die Best Practices für Datenschutz, Leistung, Nutzerfreundlichkeit, Datenverarbeitung und Berechtigungen eingehalten werden. Wenn Sie ein Problem feststellen, aktualisieren Sie das SDK auf die neueste Version oder wenden Sie sich an den SDK-Entwickler.

Wenn Sie die Tests abgeschlossen und Änderungen vorgenommen haben, empfehlen wir, die kompatible App sofort zu veröffentlichen. So können deine Nutzer die App frühzeitig testen und den Nutzern beim Update auf Android 11 eine reibungslose Umstellung ermöglichen.

Ausrichtung der App aktualisieren und neue APIs verwenden

Sobald du die kompatible Version deiner App wie zuvor beschrieben veröffentlicht hast, besteht der nächste Schritt darin, vollständige Unterstützung für Android 11 hinzuzufügen. Dazu musst du targetSdkVersion aktualisieren und die neuen aPIs und Funktionen von Android 11 nutzen. Sie können dies tun, sobald Sie bereit sind. Berücksichtigen Sie dabei die Google Play-Anforderung für die Ausrichtung auf die neue Plattform.

Wenn du vorhast, Android 11 vollständig zu unterstützen, solltest du dir zuerst die Änderungen im Verhalten von Apps, die auf Android 11 ausgerichtet sind, ansehen. Diese Zielverhaltensänderungen können funktionale Probleme verursachen, die Sie möglicherweise beheben müssen. In manchen Fällen ist jedoch möglicherweise eine umfangreiche Entwicklung erforderlich, sodass Sie sich frühzeitig darüber informieren sollten. Damit Sie die Auswirkungen besser einschätzen können, können Sie auch die Kompatibilitäts-Ein-/Aus-Schaltflächen verwenden, um Ihre aktuelle Anwendung mit ausgewählten Änderungen zu testen.

In den folgenden Schritten wird beschrieben, wie Android 11 vollständig unterstützt wird.

SDK herunterladen, Targeting ändern, mit neuen APIs entwickeln

Damit du Android 11 vollständig unterstützen kannst, lade zuerst das Android 11 SDK (und alle anderen erforderlichen Tools) in Android Studio herunter. Ändern Sie dann targetSdkVersion und compileSdkVersion der Anwendung in "30" und kompilieren Sie die Anwendung neu. Weitere Informationen finden Sie im Einrichtungsleitfaden.

Android 11-App testen

Nachdem du die App kompiliert und auf einem Gerät mit Android 11 installiert hast, solltest du mit den Tests beginnen, um sicherzustellen, dass die App bei Android 11 richtig funktioniert. Einige Verhaltensänderungen gelten nur, wenn deine App auf die neue Plattform ausgerichtet ist. Daher solltest du diese Änderungen zuerst prüfen.

Gehen Sie wie bei einfachen Kompatibilitätstests alle Abläufe und Funktionalitäten durch, um nach Problemen zu suchen. Konzentriere dich bei deinen Tests auf die Änderungen des Verhaltens bei Apps, die auf Android 11 ausgerichtet sind. Du solltest dir insbesondere die Datenschutzänderungen ansehen und alle Fehlerbehebungen testen, die du zur Anpassung der Änderungen implementiert hast. Außerdem sollten Sie prüfen, ob Ihre App die Qualitätsrichtlinien für Apps und die Best Practices für Tests erfüllt.

Prüfen Sie die Verwendung von eingeschränkten Nicht-SDK-Schnittstellen und prüfen Sie diese, falls zutreffend. Achten Sie auf Logcat-Warnungen, die diese Zugriffe kennzeichnen, und verwenden Sie die StrictMode-Methode detectNonSdkApiUsage(), um sie programmatisch abzufangen.

Teste die Bibliotheken und SDKs in deiner App vollständig, um sicherzustellen, dass sie unter Android 11 wie erwartet funktionieren und die Best Practices für Datenschutz, Leistung, Nutzerfreundlichkeit, Datenverarbeitung und Berechtigungen eingehalten werden. Wenn Sie ein Problem feststellen, aktualisieren Sie das SDK auf die neueste Version oder wenden Sie sich an den SDK-Entwickler.

Mit Ein-/Aus-Schaltflächen für die App-Kompatibilität testen

Mit Android 11 wird eine neue Funktion für Entwickler eingeführt, die das Testen deiner App mit gezielten Verhaltensänderungen einfacher macht. Bei einer debug-fähigen Anwendung können Sie mit den Ein-/Aus-Schaltflächen Folgendes tun:

  • Testen Sie gezielte Änderungen, ohne die targetSdkVersion der App tatsächlich zu ändern. Mithilfe der Ein-/Aus-Schaltflächen können Sie die Aktivierung bestimmter Änderungen des zielgerichteten Verhaltens erzwingen, um die Auswirkungen auf Ihre vorhandene App zu bewerten.
  • Konzentrieren Sie sich bei Ihren Tests nur auf bestimmte Änderungen. Mit den Ein-/Aus-Schaltflächen müssen Sie nicht alle gewünschten Änderungen gleichzeitig vornehmen, sondern alle zielgerichteten Änderungen mit Ausnahme der Änderungen deaktivieren, die Sie testen möchten.
  • Ein-/Aus-Schaltflächen über ADB verwalten: Mit ADB-Befehlen können Sie die ein- und schaltbaren Änderungen in Ihrer automatisierten Testumgebung aktivieren und deaktivieren.
  • Schnellere Fehlerbehebung mit Standardänderungs-IDs: Die ein-/ausschaltbaren Änderungen haben jeweils eine eindeutige ID und einen eindeutigen Namen, mit dem Sie schnell die Ursache in der Logausgabe beheben können.

Die Ein-/Aus-Schaltflächen können dir helfen, wenn du dich darauf vorbereitet hast, das Targeting deiner App zu ändern, oder während du dich in der aktiven Entwicklung für die Unterstützung von Android 11 befindest. Weitere Informationen finden Sie in der entsprechenden Dokumentation.