Einrichtung der Bibliothek unterstützen

Hinweis:Mit der Veröffentlichung von Android 9.0 (API-Level 28) gibt es eine neue Version der Supportbibliothek mit dem Namen AndroidX. Sie ist Teil von Jetpack. Die AndroidX-Bibliothek enthält die vorhandene Supportbibliothek sowie die neuesten Jetpack-Komponenten.

Sie können die Supportbibliothek weiterhin verwenden. Historische Artefakte (die Version 27 und frühere Versionen, die als android.support.* verpackt sind) bleiben in Google Maven verfügbar. Die gesamte Entwicklung neuer Bibliotheken erfolgt jedoch in der AndroidX-Bibliothek.

Wir empfehlen, die AndroidX-Bibliotheken in allen neuen Projekten zu verwenden. Du kannst auch vorhandene Projekte zu AndroidX migrieren.

Wie du die Android-Supportbibliotheken in deinem Entwicklungsprojekt einrichtest, hängt davon ab, welche Funktionen du verwenden möchtest und welche Android-Plattformversionen du mit deiner App unterstützen möchtest.

In diesem Dokument wird beschrieben, wie Sie das Support Library-Paket herunterladen und Ihrer Entwicklungsumgebung Bibliotheken hinzufügen.

Die Supportbibliotheken sind jetzt über das Maven-Repository von Google verfügbar. Das Herunterladen der Bibliotheken über den SDK Manager wird nicht mehr unterstützt und diese Funktion wird bald entfernt.

Supportbibliotheken auswählen

Bevor du deiner App eine Supportbibliothek hinzufügst, solltest du entscheiden, welche Funktionen du verwenden möchtest und welche Android-Versionen auf der niedrigsten Stufe unterstützt werden sollen. Weitere Informationen zu den Funktionen der verschiedenen Bibliotheken finden Sie unter Features der Supportbibliothek.

Supportbibliotheken hinzufügen

Sie müssen die Klassenpfadabhängigkeiten des Projekts Ihrer Anwendung in Ihrer Entwicklungsumgebung ändern, um eine Supportbibliothek verwenden zu können. Sie müssen diesen Vorgang für jede Supportbibliothek ausführen, die Sie verwenden möchten.

So fügen Sie Ihrem Anwendungsprojekt eine Supportbibliothek hinzu:

  1. Fügen Sie das Maven-Repository von Google in die Datei settings.gradle Ihres Projekts ein.
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
    
            // If you're using a version of Gradle lower than 4.1, you must
            // instead use:
            //
            // maven {
            //     url 'https://maven.google.com'
            // }
        }
    }
    
  2. Fügen Sie die Bibliothek für jedes Modul, in dem Sie eine Supportbibliothek verwenden möchten, in den Block dependencies der Datei build.gradle des Moduls ein. Fügen Sie beispielsweise Folgendes hinzu, um die v4-Bibliothek „core-utils“ hinzuzufügen:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }
    

Achtung: Die Verwendung dynamischer Abhängigkeiten (z. B. palette-v7:23.0.+) kann zu unerwarteten Versionsaktualisierungen und Regressionsinkompatibilitäten führen. Wir empfehlen, explizit eine Bibliotheksversion anzugeben (z. B. palette-v7:28.0.0).

Support Library APIs verwenden

Support Library-Klassen, die Unterstützung für vorhandene Framework-APIs bieten, haben in der Regel denselben Namen wie die Framework-Klasse, befinden sich aber in den android.support-Klassenpaketen oder haben das Suffix *Compat.

Achtung:Wenn Sie Klassen aus der Supportbibliothek verwenden, müssen Sie die Klasse aus dem entsprechenden Paket importieren. Beispiel für die Anwendung der Klasse ActionBar:

  • android.support.v7.app.ActionBar, wenn Sie die Supportbibliothek verwenden.
  • android.app.ActionBar, wenn Sie nur für API-Level 11 oder höher entwickeln.

Hinweis:Nachdem Sie die Supportbibliothek in Ihr Anwendungsprojekt aufgenommen haben, wird dringend empfohlen, die Anwendung für die Veröffentlichung zu verkleinern, zu verschleiern und zu optimieren. Wenn Sie den Quellcode durch Verschleierung schützen, werden nicht verwendete Klassen aus allen Bibliotheken entfernt, die Sie in Ihre Anwendung aufnehmen. Dadurch wird die Downloadgröße Ihrer Anwendung so gering wie möglich gehalten.

Weitere Informationen zur Verwendung einiger Funktionen der Supportbibliothek finden Sie in den Trainingsklassen, Leitfäden und Beispielen für Android-Entwickler. Weitere Informationen zu den einzelnen Klassen und Methoden der Support Library findest du in den android.support-Paketen in der API-Referenz.

Änderungen bei der Manifestdeklaration

Wenn du die Abwärtskompatibilität deiner vorhandenen App mit der Support Library auf eine frühere Version der Android API erhöhen möchtest, aktualisiere das Manifest deiner App. Insbesondere solltest du das Element android:minSdkVersion des <uses-sdk>-Tags im Manifest wie unten gezeigt auf die neue, niedrigere Versionsnummer aktualisieren:

  <uses-sdk
      android:minSdkVersion="14"
      android:targetSdkVersion="23" />

Über die Manifesteinstellung wird Google Play mitgeteilt, dass deine App auf Geräten mit Android 4.0 (API-Level 14) und höher installiert werden kann.

Wenn Sie Gradle-Build-Dateien verwenden, werden die Manifesteinstellungen durch die Einstellung minSdkVersion in der Build-Datei überschrieben.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

In diesem Fall wird Google Play durch die Einstellung für die Build-Datei mitgeteilt, dass die Standard-Build-Variante deiner App auf Geräten mit Android 4.1 (API-Level 16) und höher installiert werden kann. Weitere Informationen zu Build-Varianten finden Sie unter Build-System – Übersicht.

Hinweis:Wenn Sie mehrere Supportbibliotheken verwenden, muss die SDK-Mindestversion die höchste Version sein, die für eine der angegebenen Bibliotheken erforderlich ist. Wenn deine App beispielsweise sowohl die v14 Preference Support Library als auch die v17 Leanback-Bibliothek enthält, muss die Mindest-SDK-Version 17 oder höher sein.