Apps zu Android 11 migrieren

Mit jeder Android-Version führen wir neue Funktionen und Verhaltensänderungen ein, um Android hilfreicher, sicherer und leistungsfähiger zu machen. In vielen Fällen funktioniert Ihre App direkt nach der Installation genau wie erwartet. In anderen Fällen müssen Sie möglicherweise Änderungen an Ihrer App vornehmen, um sie an die Plattformänderungen anzupassen.

Da Nutzer die neue Plattform nutzen können, sobald der Quellcode für das Android Open Source Project (AOSP) freigegeben wird, ist es wichtig, dass Apps bereit sind, wie erwartet funktionieren und idealerweise neue Funktionen und APIs nutzen, um die neue Plattform optimal zu nutzen.

Dieses Dokument bietet einen allgemeinen Überblick über typische Entwicklungs- und Testphasen, mit denen Sie einen Bereitschaftsplan erstellen können, der gut mit dem Zeitplan für die Plattformveröffentlichung übereinstimmt und eine hervorragende Nutzererfahrung unter Android 11 ermöglicht.

Eine typische Migration umfasst zwei Phasen, die parallel ablaufen können:

  • Für App-Kompatibilität sorgen (bis zur finalen Version von Android 11)
  • Ausrichtung auf die neuen Plattformfunktionen und APIs (so bald wie möglich nach der endgültigen Veröffentlichung)

Auf dieser Seite werden die allgemeinen Schritte für jede dieser Phasen beschrieben. Wenn Sie bereit sind, lesen Sie den Hilfeartikel Android 11 installieren.

Kompatibilität mit Android 11

Es ist wichtig, die Funktionalität Ihrer vorhandenen App mit Android 11 zu testen, damit Nutzer, die auf die neueste Android-Version umstellen, eine optimale Nutzererfahrung haben. 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 gegebenenfalls Anpassungen an Ihrer App vorzunehmen.

Normalerweise können Sie Ihre App anpassen und ein Update veröffentlichen, ohne die targetSdkVersion der App ändern zu müssen. Ebenso sollten Sie keine neuen APIs verwenden oder die compileSdkVersion der App ändern müssen. Dies kann jedoch von der Art und Weise abhängen, wie Ihre App erstellt wurde, und von den verwendeten Plattformfunktionen. In den folgenden Abschnitten werden die Schritte beschrieben.

Bevor Sie beginnen, sollten Sie sich mit den Änderungen am Verhalten vertraut machen, die sich auf Ihre App auswirken können, auch wenn Sie die targetSdkVersion nicht ändern.

Kompatibilitätstests durchführen

Die Kompatibilität mit Android 11 lässt sich größtenteils mit den Tests vergleichen, die Sie sonst bei der Vorbereitung auf die Veröffentlichung Ihrer App durchführen. Sehen Sie sich die Qualitätsrichtlinien für Apps und die Best Practices für Tests noch einmal an.

Installieren Sie einfach Ihre aktuell veröffentlichte App auf einem Gerät mit Android 11 und prüfen Sie alle Abläufe und Funktionen auf Probleme. Damit Sie Ihre Tests besser ausrichten können, sollten Sie sich mit den Verhaltensänderungen vertraut machen, die in Android 11 eingeführt wurden und sich auf die Funktion Ihrer App auswirken oder zum Absturz der App führen können. Lesen Sie sich insbesondere die wichtigsten Änderungen an der Datenschutzerklärung durch und testen Sie alle Korrekturen, die Sie zur Anpassung an die Änderungen implementieren.

Prüfen und testen Sie außerdem, ob eingeschränkte Nicht-SDK-Schnittstellen verwendet werden, und wechseln Sie stattdessen zu öffentlichen SDK- oder NDK-Äquivalenten. Achten Sie auf Logcat-Warnungen, die diese Zugriffe hervorheben, und verwenden Sie die StrictMode-Methode detectNonSdkApiUsage(), um sie programmatisch zu erfassen.

Prüfen Sie abschließend die Bibliotheken und SDKs in Ihrer App, um sicherzustellen, dass sie unter Android 11 wie erwartet funktionieren und die Best Practices für Datenschutz, Leistung, UX, Datenhandhabung und Berechtigungen einhalten. Wenn ein Problem auftritt, aktualisieren Sie das SDK auf die neueste Version oder wenden Sie sich an den SDK-Entwickler.

Wenn Sie die Tests abgeschlossen und alle erforderlichen Änderungen vorgenommen haben, empfehlen wir Ihnen, Ihre kompatible App sofort zu veröffentlichen. So können Ihre Nutzer die App frühzeitig testen und Sie können ihnen einen reibungslosen Übergang beim Update auf Android 11 ermöglichen.

Targeting der App aktualisieren und mit neuen APIs erstellen

Nachdem Sie die kompatible Version Ihrer App wie oben beschrieben veröffentlicht haben, ist der nächste Schritt, die volle Unterstützung für Android 11 hinzuzufügen. Aktualisieren Sie dazu die targetSdkVersion und nutzen Sie die neuen APIs und Funktionen von Android 11. Sie können dies tun, sobald Sie bereit sind. Beachten Sie dabei die Google Play-Anforderungen für die Ausrichtung auf die neue Plattform.

Wenn Sie Ihre Arbeit planen, um Android 11 vollständig zu unterstützen, sollten Sie sich zuerst die Verhaltensänderungen ansehen, die für Apps gelten, die auf Android 11 ausgerichtet sind. Diese gezielten Verhaltensänderungen können zu Funktionsproblemen führen, die Sie möglicherweise beheben müssen. In einigen Fällen kann eine erhebliche Entwicklung erforderlich sein. Daher ist es am besten, sich frühzeitig damit vertraut zu machen. Um die Auswirkungen besser beurteilen zu können, können Sie auch die Kompatibilitätsschalter verwenden, um Ihre aktuelle App mit aktivierten ausgewählten Änderungen zu testen.

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

SDK abrufen, Targeting ändern, mit neuen APIs erstellen

Wenn Sie die volle Unterstützung für Android 11 nutzen möchten, laden Sie zuerst das Android 11 SDK und alle anderen erforderlichen Tools in Android Studio herunter. Ändern Sie als Nächstes die targetSdkVersion und compileSdkVersion der App in "30" und kompilieren Sie die App neu. Weitere Informationen finden Sie im Einrichtungsleitfaden.

Android 11-App testen

Nachdem Sie die App kompiliert und auf einem Gerät mit Android 11 installiert haben, können Sie mit dem Testen beginnen, um sicherzustellen, dass die App ordnungsgemäß funktioniert, wenn sie auf Android 11 ausgerichtet ist. Einige Verhaltensänderungen gelten nur, wenn Ihre App auf die neue Plattform ausgerichtet ist. Sie sollten sich diese Änderungen daher ansehen, bevor Sie beginnen.

Gehen Sie wie bei den grundlegenden Kompatibilitätstests alle Abläufe und Funktionen durch und suchen Sie nach Problemen. Konzentrieren Sie sich bei Ihren Tests auf die Verhaltensänderungen für Apps, die auf Android 11 ausgerichtet sind. Sehen Sie sich insbesondere die Änderungen am Datenschutz an und testen Sie alle Korrekturen, die Sie zur Anpassung an die Änderungen implementieren. Prüfen Sie auch, ob Ihre App den Qualitätsrichtlinien für Apps und den Best Practices für Tests entspricht.

Prüfen und testen Sie die Verwendung von eingeschränkten Nicht-SDK-Schnittstellen, die möglicherweise gelten. Achten Sie auf Logcat-Warnungen, die diese Zugriffe hervorheben, und verwenden Sie die StrictMode-Methode detectNonSdkApiUsage(), um sie programmatisch zu erfassen.

Prüfen Sie abschließend die Bibliotheken und SDKs in Ihrer App, um sicherzustellen, dass sie unter Android 11 wie erwartet funktionieren und die Best Practices für Datenschutz, Leistung, UX, Datenhandhabung und Berechtigungen einhalten. Wenn ein Problem auftritt, aktualisieren Sie das SDK auf die neueste Version oder wenden Sie sich an den SDK-Entwickler.

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

Android 11 bietet eine neue Funktion für Entwickler, mit der sich Ihre App mit gezielten Verhaltensänderungen leichter testen lässt. Bei einer debugfähigen App können Sie mit den Ein-/Aus-Schaltflächen Folgendes tun:

  • Zielgerichtete Änderungen testen, ohne die targetSdkVersion der App zu ändern Mit den Ein-/Aus-Schaltflächen können Sie bestimmte Änderungen am Verhalten erzwingen, um die Auswirkungen auf Ihre vorhandene App zu bewerten.
  • Konzentrieren Sie sich bei Ihren Tests nur auf bestimmte Änderungen. Anstatt alle Änderungen auf einmal anpassen zu müssen, können Sie mit den Ein-/Aus-Schaltflächen alle Änderungen deaktivieren, mit Ausnahme derjenigen, die Sie testen möchten.
  • Schalter über adb verwalten Mithilfe von adb-Befehlen können Sie die umschaltbaren Änderungen in Ihrer automatisierten Testumgebung aktivieren und deaktivieren.
  • Mithilfe von Standard-Änderungs-IDs schneller Fehler beheben Ein-/Aus-Änderungen haben jeweils eine eindeutige ID und einen Namen, mit denen Sie die Ursache in der Protokollausgabe schnell beheben können.

Die Ein-/Aus-Schaltflächen können Ihnen dabei helfen, das Targeting Ihrer App zu ändern oder die Unterstützung von Android 11 zu entwickeln. Weitere Informationen finden Sie in der entsprechenden Dokumentation.