Supportbibliothek

Hinweis:Mit der Veröffentlichung von Android 9.0 (API-Level 28) eine neue Version der Supportbibliothek namens AndroidX ist Teil von Jetpack. AndroidX-Bibliothek enthält die vorhandene Supportbibliothek und die neuesten Jetpack-Komponenten.

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

Wir empfehlen, die AndroidX-Bibliotheken in allen neuen Projekten zu verwenden. Außerdem sollten Sie migrieren Sie ebenfalls vorhandene Projekte zu AndroidX.

Bei der Entwicklung von Apps, die mehrere API-Versionen unterstützen, kann ein neuere Funktionen unter älteren Android-Versionen bereitzustellen oder auf gleichwertige Funktionen zurückgreifen. Anstatt Code zu erstellen, zur Verarbeitung älterer Versionen der Plattform können Sie diese Bibliotheken nutzen, um diese Kompatibilitätsebene bereitzustellen. Die Supportbibliotheken bieten zusätzliche Convenience-Klassen und Funktionen, die in der Standard-Framework-API für einfachere Entwicklung und Unterstützung auf Geräte.

Ursprünglich war die Android Support Library eine einzige Binärbibliothek für Apps. zu einer Suite von Bibliotheken für die App-Entwicklung entwickelt. Viele davon Bibliotheken sind jetzt ein dringend empfohlener, wenn nicht unbedingt notwendiger Teil der App. Entwicklung.

Dieses Dokument bietet einen Überblick über die Supportbibliothek, damit Sie und wie Sie sie effektiv in Ihrer App nutzen können.

Achtung:Ab der Support Library-Version 26.0.0 (Juli 2017), die erforderliche Mindest-API-Ebene für die meisten Supportbibliotheken ist für die meisten Bibliothekspakete auf Android 4.0 (API-Level 14) gestiegen. Für Weitere Informationen finden Sie unter Versionsunterstützung und Paket Namen auf dieser Seite.

Anwendungsbereiche der Supportbibliotheken

Die Supportbibliotheken können auf unterschiedliche Weise eingesetzt werden. Rückwärts Kompatibilitätsklassen für frühere Versionen der Plattform . Nachfolgend finden Sie eine vollständige Liste der Möglichkeiten, wie Sie die Supportbibliotheken verwenden können in Ihrer App:

  • Abwärtskompatibilität für neuere APIs: Eine große Menge an Supportbibliotheken bieten Abwärtskompatibilität für neuere Frameworks Klassen und Methoden. Beispiel: Fragment Supportklasse bietet Unterstützung für Fragmente auf Geräten, auf denen Versionen ausgeführt werden älter als Android 3.0 (API-Level 11).
  • Convenience- und Helper-Klassen: Die Supportbibliotheken bieten eine Es gibt viele Hilfsklassen, insbesondere für die Entwicklung von Benutzeroberflächen. Für Beispiel: Die Klasse RecyclerView stellt einem Nutzer Widget zur Anzeige und Verwaltung sehr langer Listen, verwendbar auf Android-Versionen ab API-Level 7.
  • Debugging und Dienstprogramme - Es gibt eine Reihe von Funktionen. die über den Code in Ihrer App hinausgehen, einschließlich support-annotations Bibliothek für verbesserte Code-Lint-Prüfungen bei Methodeneingaben und Multidex-Unterstützung für Apps mit über 65.536 Methoden konfigurieren und verteilen.

Verwenden von Support-APIs im Vergleich zu Framework-APIs

Supportbibliotheken bieten Klassen und Methoden, die APIs in Android-Framework entwickelt. Sie fragen sich vielleicht, Verwenden Sie die Framework-Version der API oder die entsprechende Supportbibliothek. Hier Richtlinien für die Verwendung von Supportbibliotheksklassen der Framework-APIs:

  • Kompatibilität mit einer bestimmten Funktion – Wenn Sie eine neue Plattformfunktion auf Geräten mit älteren Versionen des Plattform verwenden, verwenden Sie die entsprechenden Klassen und Methoden aus der Supportbibliothek.
  • Kompatibilität mit Funktionen ähnlicher Bibliothek: Komplexer Supportbibliotheksklassen können von einem oder mehreren zusätzlichen Supporttypen abhängen -Bibliotheksklassen, daher sollten Sie für diese Supportbibliotheksklassen verwenden. Abhängigkeiten. Beispiel: ViewPager Supportklasse sollte mit der Supportklasse FragmentPagerAdapter oder der Supportklasse FragmentStatePagerAdapter verwendet werden.
  • Allgemeine Gerätekompatibilität: Wenn Sie keinen bestimmten Plattformfunktion, die Sie mit Ihrer App in einer abwärtskompatiblen sollten Sie Supportbibliotheken in Ihrer App verwenden. Sie können beispielsweise ActivityCompat anstelle der Framework-Klasse Activity verwenden, damit Sie neuere Funktionen nutzen können. z. B. die Einführung des neuen Berechtigungsmodells Android 6.0 (API-Level 23)

Support Library-Klassen, die eine kompatible Implementierung der Plattform bieten API-Klassen können möglicherweise nicht alle Funktionen bereitstellen in der neuesten Version verfügbar, aufgrund der Einschränkungen des Hostgeräts Plattformversion. In diesen Fällen sind Support Library-Klassen darauf ausgelegt, und kann möglicherweise nicht alle Funktionen oder Daten die aktuelle Plattform-API. Aus diesem Grund solltest du die Referenz Dokumentation für die von Ihnen verwendeten Bibliotheksklassen und -methoden und Test auf Geräten mit der frühesten Version der Plattform, die von für Ihre App.

Hinweis:Die Supportbibliotheken bieten keine äquivalente Klassen und Methoden für jede Framework-API. In einigen Fällen müssen Sie einen Framework-Methodenaufruf mit expliziter SDK-Versionsprüfung Alternativer Code für Methoden, die auf einem Gerät nicht verfügbar sind. Weitere Informationen Informationen zur Verwendung von Versionsprüfungen in Ihrem Code finden Sie unter Unterstützung verschiedener Plattformversionen.

Versionsunterstützung und Paketnamen

Einige der Pakete der Supportbibliothek haben Paketnamen, die auf die der ursprünglich unterstützten API, mit einer v#-Notation wie dem support-v4-Paket. Ab der Support Library-Version 26.0.0 (veröffentlicht in Juli 2017), wurde das unterstützte Mindest-API-Level in Android 4.0 (API- Stufe 14) für alle Supportbibliothekspakete an. Daher sollten Sie bei der Arbeit mit der Supportbibliothek veröffentlicht haben, sollten Sie nicht davon ausgehen, Die v#-Paketnotation gibt eine minimale API-Supportstufe an. Diese Änderung in den letzten Releases bedeutet auch, dass Bibliothekspakete mit der Version 4 und v7 entsprechen im Wesentlichen der von ihnen unterstützten Mindest-API-Ebene. So unterstützen das Paket „support-v4“ und „support-v7“ jeweils mindestens API-Level 14 für Releases der Support Library ab Version 26.0.0.

Releaseversionen der Supportbibliothek

Die <ph type="x-smartling-placeholder"></ph> der Support Library (z. B. 24.2.0 oder 25.0.1) vom Mindest-API-Level, das von einer Bibliothek unterstützt wird, Release.Die Versionsnummer des Release gibt an, welche Version der Plattform API, auf der es basiert, und daher, was die neuesten APIs möglicherweise sein können in dieser Version der Bibliotheken enthalten.

Der erste Abschnitt der Versionsnummer des Releases, zum Beispiel die 24 in Version 24.2.0, entspricht im Allgemeinen der Version des Plattform-API verfügbar war, als sie veröffentlicht wurde. Die Release-Versionsebene der Supportbibliothek angibt, dass sie einige Funktionen dieser API enthält. Sie sollten jedoch nicht davon ausgehen, dass sie mit allen Funktionen, die in der neuen Plattform-API-Version veröffentlicht wurden.

Bibliotheksabhängigkeiten

Die meisten Bibliotheken in der Android Support Library sind abhängig von eine oder mehrere Bibliotheken. Beispielsweise haben fast alle Supportbibliotheken Abhängigkeit vom support-compat-Paket. Im Allgemeinen müssen Sie sich Gedanken über die Unterstützung von Bibliotheksabhängigkeiten machen, da der Gradle-Build das Tool die Bibliotheksabhängigkeiten für Sie verwaltet, indem es abhängigen Bibliotheken verwendet werden.

Wenn Sie sehen möchten, welche Bibliotheken und Bibliotheksabhängigkeiten in Ihre App zu erstellen, führen Sie den folgenden Befehl im Build-Stammverzeichnis Ihrer App-Entwicklung aus. um einen Bericht über die Abhängigkeiten für dieses Projekt zu erhalten, einschließlich Android-Supportbibliotheken und andere Bibliotheken:

gradle -q dependencies your-app-project:dependencies

Weitere Informationen zum Hinzufügen von Supportbibliotheken zu Ihrer Entwicklung mit Gradle erstellen, siehe Support Bibliothek einrichten. Weitere Informationen zur Arbeit mit Gradle findest du unter Konfigurieren Dein Build.

Beachte, dass alle Android-Supportbibliotheken auch von einer Basisebene abhängen. der Plattform. Für neuere Releases ist das Android 4.0 (API-Level 14) oder höher liegen.