Apps zu Android 11 migrieren

Mit jedem Release von Android führen wir neue Funktionen sowie Verhaltensänderungen ein, die Android noch hilfreicher, sicherer und leistungsfähiger machen sollen. In vielen Fällen funktioniert Ihre Anwendung von Anfang an genau wie erwartet, während Sie in anderen Fällen möglicherweise Änderungen an der Anwendung vornehmen müssen, um sie an die Plattformänderungen anzupassen.

Da Nutzer die neue Plattform erhalten können, sobald der Quellcode für AOSP (Android Open Source Project) veröffentlicht wurde, ist es wichtig, dass Anwendungen bereit sind, für Nutzer erwartungsgemäß funktionieren und idealerweise die neuen Funktionen und APIs nutzen, um die neue Plattform optimal zu nutzen.

Dieses Dokument bietet einen allgemeinen Überblick über typische Entwicklungs- und Testphasen, mit denen du einen Plan für die Bereitschaft erstellen kannst, der gut auf den Releasezeitplan der Plattform abgestimmt ist und für eine optimale Nutzung von Android 11 sorgt.

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

  • App-Kompatibilität sicherstellen (ab der endgültigen Version von Android 11)
  • Ausrichtung auf die neuen Plattformfunktionen und APIs (so bald wie möglich nach dem endgültigen Release)

Auf dieser Seite werden die allgemeinen Schritte für jede dieser Phasen beschrieben. Wenn Sie bereit sind, lesen Sie 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, um für Nutzer, die auf die neueste Android-Version aktualisieren, eine optimale Nutzung zu gewährleisten. Einige Plattformänderungen können sich auf das Verhalten Ihrer App auswirken. Daher ist es wichtig, Ihre App frühzeitig und gründlich zu testen und dann die erforderlichen Anpassungen an Ihrer App vorzunehmen.

Normalerweise kannst du deine App anpassen und ein Update veröffentlichen, ohne die targetSdkVersion der App ändern zu müssen. Außerdem solltest du in der Regel weder neue APIs verwenden noch die compileSdkVersion der App ändern. Dies kann jedoch davon abhängen, wie deine App aufgebaut ist und welche Plattformfunktion sie verwendet. Die Schritte werden in den folgenden Abschnitten 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

Die Kompatibilitätstests mit Android 11 ähneln größtenteils denen, die du sonst bei der Vorbereitung auf die Veröffentlichung deiner App durchführst. An dieser Stelle kannst du dir die Qualitätsrichtlinien für Apps und die Best Practices für Tests durchlesen.

Installiere einfach deine aktuell veröffentlichte App auf einem Gerät mit Android 11 und prüfe alle Abläufe und Funktionen, um Probleme zu finden. Damit du dich auf deine Tests konzentrieren kannst, lies dir die Änderungen im Verhalten von Android 11 durch, die die Funktion deiner App beeinträchtigen oder zum Absturz der App führen können. Sieh dir insbesondere die wichtigen Änderungen beim Datenschutz an und teste alle Korrekturen, die du implementierst, um die Änderungen zu berücksichtigen.

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

Als Letztes solltest du die Bibliotheken und SDKs in deiner App vollständig testen, um zu prüfen, ob sie wie erwartet unter Android 11 funktionieren. Beachte außerdem die Best Practices für Datenschutz, Leistung, UX, Datenverarbeitung und Berechtigungen. Falls ein Problem auftritt, aktualisieren Sie das SDK auf die neueste Version oder wenden Sie sich an den SDK-Entwickler.

Wenn du die Tests abgeschlossen und Aktualisierungen vorgenommen hast, empfehlen wir dir, deine kompatible App sofort zu veröffentlichen. So können deine Nutzer die App frühzeitig testen und eine reibungslose Umstellung auf Android 11 ermöglichen.

Ausrichtung der App aktualisieren und neue APIs verwenden

Nachdem du wie zuvor beschrieben die kompatible Version deiner App veröffentlicht hast, musst du die vollständige Unterstützung für Android 11 hinzufügen. Dazu aktualisierst du die targetSdkVersion und nutzt die neuen APIs und Funktionen von Android 11. Das kannst du tun, sobald du bereit bist. Berücksichtige dabei die Google Play-Anforderungen für die Ausrichtung auf die neue Plattform.

Wenn du die vollständige Unterstützung von Android 11 planst, solltest du dir zuerst die Änderungen im Verhalten von Apps ansehen, die auf Android 11 ausgerichtet sind. Diese zielgerichteten Verhaltensänderungen können zu funktionalen Problemen führen, die Sie möglicherweise beheben müssen. In einigen Fällen kann eine umfassende Weiterentwicklung erforderlich sein, sodass es am besten ist, frühzeitig darüber zu lernen. Damit Sie die Auswirkungen besser einschätzen können, können Sie Ihre aktuelle App auch mithilfe der Ein-/Aus-Schaltflächen für die Kompatibilität mit aktivierten ausgewählten Änderungen testen.

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

SDK herunterladen, Targeting ändern, neue APIs verwenden

Damit du den vollen Android 11-Support nutzen kannst, musst du zuerst das Android 11 SDK und alle anderen erforderlichen Tools in Android Studio herunterladen. Ä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 du die App kompiliert und auf einem Gerät mit Android 11 installiert hast, kannst du testen, ob die App bei der Ausrichtung auf Android 11 ordnungsgemäß funktioniert. Einige Verhaltensänderungen werden nur angewendet, wenn Ihre App auf die neue Plattform ausgerichtet ist. Sie sollten sich also vorab über die Änderungen informieren.

Wie bei einfachen Kompatibilitätstests solltest du alle Abläufe und Funktionen durchgehen, um nach Problemen zu suchen. Konzentrieren Sie sich bei Ihren Tests auf die Änderungen im Verhalten von Apps, die auf Android 11 ausgerichtet sind. Sehen Sie sich insbesondere die Datenschutzänderungen an und testen Sie alle Korrekturen, die Sie implementieren, um die Änderungen zu berücksichtigen. Außerdem solltest du prüfen, ob deine App den Qualitätsrichtlinien für Apps und den Best Practices für Tests entspricht.

Sehen Sie sich die Verwendung von eingeschränkten Nicht-SDK-Schnittstellen an, die möglicherweise zutreffen, und testen Sie sie. Achten Sie auf Logcat-Warnungen, die diese Zugriffe hervorheben, und verwenden Sie die StrictMode-Methode detectNonSdkApiUsage(), um sie programmatisch abzufangen.

Als Letztes solltest du die Bibliotheken und SDKs in deiner App vollständig testen, um zu prüfen, ob sie wie erwartet unter Android 11 funktionieren. Beachte außerdem die Best Practices für Datenschutz, Leistung, UX, Datenverarbeitung und Berechtigungen. Falls ein Problem auftritt, 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 es einfacher macht, deine App mit gezielten Verhaltensänderungen zu testen. Bei Debug-fähigen Apps können Sie mit den Ein-/Aus-Schaltflächen Folgendes tun:

  • Zielgerichtete Änderungen testen, ohne die targetSdkVersion der App tatsächlich zu ändern Mit den Ein-/Aus-Schaltflächen können Sie die Aktivierung bestimmter gezielter Verhaltensänderungen erzwingen, um die Auswirkungen auf Ihre vorhandene Anwendung zu bewerten.
  • Konzentrieren Sie sich beim Testen ausschließlich auf bestimmte Änderungen. Mit den Ein-/Aus-Schaltflächen können Sie alle Zieländerungen deaktivieren, mit Ausnahme derer, die Sie testen möchten.
  • Ein/Aus-Schaltfläche über ADB verwalten Mit ADB-Befehlen können Sie die ein- und ausschaltbaren Änderungen in Ihrer automatisierten Testumgebung aktivieren und deaktivieren.
  • Beschleunigen Sie die Fehlerbehebung mit Standard-Änderungs-IDs. Umschaltbare Änderungen haben jeweils eine eindeutige ID und einen eindeutigen Namen, mit denen Sie die Ursache in der Logausgabe schnell beheben können.

Die Ein-/Aus-Schaltflächen können Ihnen bei der Vorbereitung auf eine Änderung des Targetings Ihrer App oder bei der Entwicklung der Unterstützung für Android 11 helfen. Weitere Informationen finden Sie in der entsprechenden Dokumentation.