SDK-Zielversion Ihrer App für Wear OS 4 aktualisieren

Nachdem Sie Ihre App aktualisiert haben, um sie für Wear OS 4 vorzubereiten, können Sie die Kompatibilität der App mit dieser Wear OS-Version weiter verbessern, indem Sie sie auf Android 13 (API-Level 33) ausrichten.

Wenn Sie Ihre SDK-Zielversion aktualisieren, sollten Sie Änderungen des Systemverhaltens berücksichtigen, die für Apps, die auf Android 12 oder höher ausgerichtet sind, sowie für Apps, die auf Android 13 oder höher ausgerichtet sind. Beachten Sie insbesondere die weiter unten in diesem Leitfaden beschriebenen Änderungen an den Berechtigungen sowie an den App-Komponenten und dem Navigationsverhalten.

Build-Datei aktualisieren

Zum Aktualisieren der SDK-Zielversion öffnest du die Datei build.gradle oder build.gradle.kts auf Modulebene und aktualisierst sie mit Werten für Android 13.

Wie Sie die Werte in Ihrer Build-Datei formatieren, hängt von der Version des verwendeten Android-Gradle-Plug-ins (AGP) ab.

AGP 7.0.0 oder höher

Wenn du AGP 7.0.0 oder höher verwendest, aktualisiere die Datei build.gradle oder build.gradle.kts deiner App mit den folgenden Werten für Android 13:

Groovig

android {
    compileSdk 33
    ...
    defaultConfig {
        targetSdk 33
    }
}

Kotlin

android {
    compileSdk = 33
    ...
    defaultConfig {
        targetSdk = 33
    }
}

AGP 4.2.0 oder niedriger

Wenn du AGP 4.2.0 oder niedriger verwendest, aktualisiere die Datei build.gradle oder build.gradle.kts deiner App mit den folgenden Werten für Android 13:

Groovig

android {
    compileSdkVersion "33"
    ...
    defaultConfig {
        targetSdkVersion "33"
    }
}

Kotlin

android {
    compileSdkVersion = "33"
    ...
    defaultConfig {
        targetSdkVersion = "33"
    }
}

Änderungen an Berechtigungen

In diesem Abschnitt werden mehrere Änderungen an Berechtigungen aufgeführt, die sich auf Apps nach Android 13 auswirken.

Berechtigung für Körpersensoren im Hintergrund

Wenn Sie Informationen von gängigen Körpersensoren wie die Herzfrequenz im Hintergrund abrufen möchten, fordern Sie die Berechtigung BODY_SENSORS_BACKGROUND an.

Weitere Informationen finden Sie in der Anleitung Hintergrundzugriff auf Körpersensordaten anfordern.

Berechtigung „Exakter Alarm“

Wenn du zeitgenaue Alarme verwenden möchtest, die auch als genaue Alarme bezeichnet werden, musst du entweder die Berechtigung USE_EXACT_ALARM oder SCHEDULE_EXACT_ALARM deklarieren.

Sofern die Hauptfunktionen Ihrer App nicht von exakten Alarmen abhängig sind, z. B. für eine Wecker-App oder eine Kalender-App, sollten Sie stattdessen genaue Alarme verwenden. Die meisten Apps können Aufgaben und Ereignisse mit ungenauen Alarmen planen.

Weitere Informationen zum Stellen eines genauen Weckers

Detaillierte Medienberechtigungen

Wenn Ihre App auf Mediendateien zugreifen muss, die von anderen Apps erstellt wurden, müssen Sie detaillierte Medienberechtigungen anfordern, die mit READ_MEDIA_* statt mit der Berechtigung READ_EXTERNAL_STORAGE beginnen. Wenn Ihrer App zuvor die Berechtigung READ_EXTERNAL_STORAGE gewährt wurde, erteilt das System die erforderlichen detaillierten Medienberechtigungen automatisch.

Weitere Informationen zu detaillierten Medienberechtigungen

Änderungen an App-Komponenten und Navigation

In diesem Abschnitt werden mehrere Änderungen an App-Komponenten und dem Navigationsverhalten aufgeführt, die sich auf Apps auswirken, die auf Android 13 ausgerichtet sind.

Anforderungen für den Export von App-Komponenten

Wenn Ihre App Aktivitäten, Dienste oder Übertragungsempfänger enthält, die Intent-Filter verwenden, müssen Sie das Attribut android:exported für diese App-Komponenten explizit deklarieren.

Weitere Informationen zum sicheren Exportieren von Komponenten

Veränderlichkeit von ausstehenden Intents angeben

Sie müssen angeben, ob jedes PendingIntent-Objekt in Ihrer App änderbar oder unveränderlich ist. In den meisten Fällen sollten Sie unveränderliche PendingIntent-Objekte verwenden, um die Integrität der Daten innerhalb des Intents zu schützen.

Weitere Informationen zum Angeben der Veränderlichkeit von ausstehenden Intents

Einschränkungen bei der Einführung von Diensten im Vordergrund

In den meisten Fällen können bei der Ausführung Ihrer App im Hintergrund keine Dienste im Vordergrund gestartet werden.

Weitere Informationen zu den Einschränkungen beim Starten eines Diensts im Vordergrund aus dem Hintergrund

Benachrichtigung über Trampolin-Einschränkungen

Nachdem der Nutzer mit einer Benachrichtigung interagiert hat, können Sie startActivity() nicht mehr innerhalb eines Dienstes oder Empfängers aufrufen. Eine solche Interstitial-App-Komponente, deren einzige Funktion eine Aktivität startet, wird als Benachrichtigungtrampolin bezeichnet.

Weitere Informationen zu Einschränkungen bei Trampolin-Benachrichtigungen