Überarbeitungsarchiv der Bibliothek unterstützen

Diese Seite enthält Details zu älteren Releases von Support Library-Paketen. Die aktuellen Releases der Support Library finden Sie unter Letzte Überarbeitungen der Supportbibliothek.

Revision 26.0.0 Beta 2

(Juni 2017)

Bitte beachten Sie, dass 26.0.0-beta2 eine Vorabveröffentlichung ist. Die API-Oberfläche kann sich ändern und enthält nicht unbedingt Funktionen oder Fehlerkorrekturen aus den neuesten stabilen Versionen der Support Library.

Wichtig: Die Supportbibliotheken sind jetzt über das Maven-Repository von Google verfügbar. Das Support-Repository muss nicht aus dem SDK Manager heruntergeladen werden. Weitere Informationen findest du unter Supportbibliothek einrichten.

Neue APIs

API-Unterschiede

Fehlerkorrekturen

  • Durch das Drop-down des Android O SDKs geht der Kursivformat in TextViews verloren
  • Null-Pointer-Ausnahme beim Herstellen einer Verbindung zu MediaBrowserServiceCompat
  • TextInputLayout muss Hinweise für onProvideAutofillStructure() festlegen
  • Stack Overflow bei Verwendung der automatischen Größe von TextView für O

Revision 26.0.0 Beta 1

(Mai 2017)

Bitte beachten Sie, dass 26.0.0-beta1 eine Vorabveröffentlichung ist. Die API-Oberfläche kann sich ändern und enthält nicht unbedingt Funktionen oder Fehlerkorrekturen aus den neuesten stabilen Versionen der Support Library.

Wichtig: Die Supportbibliotheken sind jetzt über das Maven-Repository von Google verfügbar. Das Support-Repository muss nicht aus dem SDK Manager heruntergeladen werden. Weitere Informationen findest du unter Supportbibliothek einrichten.

Wichtige Änderungen

  • FragmentActivity.setSupportMediaController() und FragmentActivity.getSupportMediaController() wurden entfernt. Verwenden Sie die neuen statischen Methoden MediaControllerCompat.setMediaController() und MediaControllerCompat.getMediaController().
  • BottomNavigationView ruft jetzt onNavigationItemReselected() auf, wenn ein bereits ausgewähltes Element ausgewählt wird, und nicht onNavigationItemSelected().
  • Alle Instanzen der findViewById()-Methode geben jetzt <T extends View> T anstelle von View zurück. Diese Änderung hat folgende Auswirkungen:
    • Dies kann dazu führen, dass vorhandener Code einen mehrdeutigen Rückgabetyp hat, z. B. wenn sowohl someMethod(View) als auch someMethod(TextView) das Ergebnis eines Aufrufs von findViewById() annimmt.
    • Bei Verwendung der Java 8-Quellsprache erfordert dies eine explizite Umwandlung in View, wenn der Rückgabetyp nicht eingeschränkt ist (z. B. assertNotNull(findViewById(...)).someViewMethod())).
    • Für Überschreibungen nicht finaler findViewById()-Methoden (z. B. Activity.findViewById()) muss der Rückgabetyp aktualisiert werden.

Neue APIs

  • FragmentManager und Fragment haben eine isStateSaved()-Methode, um Abfragen zu ermöglichen, ob eine Transaktion ohne Statusverlust zulässig ist oder nicht. Dies ist besonders nützlich, um die Überprüfung zu prüfen, wenn ein onClick()-Ereignis verarbeitet wird, bevor eine Transaktion ausgeführt wird.
  • Pfadbewegungen werden in AnimatedVectorDrawableCompat unterstützt. Durch die Pfadbewegung kann ein Objektanimator zwei Eigenschaften gleichzeitig basierend auf einem Pfad ändern. Der Pfad wird in der XML des Animator als android:pathData angegeben.
  • Physikbasierte Animation:
    • Neues FlingAnimation, das Animationen mit einer Anfangsgeschwindigkeit unterstützt und langsam verlangsamt.
    • Abgeleitete Klassen von DynamicAnimation unterstützen die Animation benutzerdefinierter Eigenschaften für jedes Objekt.
    • Sowohl SpringAnimation als auch FlingAnimation können jetzt einen Gleitkommawert animieren, ohne dass ihm eine View oder ein Object zugeordnet werden muss.

    Weitere Informationen findest du auf den Vorschauseiten Frühlingsanimation und Fling-Animation.

  • Unterstützung von Schriftarten in XML:
    • Mit ResourcesCompat.getFont können Schriftartressourcen wie z. B. Schriftfamilien-XML-Ressourcen geladen werden, die mit TextView.setTypeface() verwendet werden können.
    • Bei Verwendung von AppCompat unterstützt TextView die Angabe einer Schriftartressource oder des Schriftfamilien-XML-Codes über das XML-Attribut android:fontFamily.
    • Verwenden Sie die XML-Schriftfamilie, um Schriftfamilien mit Stil- und Schriftstärkevarianten zu erstellen. Wenn Sie dazu die unterstützenden Bibliotheksklassen verwenden, verwenden Sie die Attribute app: und android:.
  • Herunterladbare Schriftarten:
    • Neue FontsContractCompat, mit der du Schriftarten von einem Schriftartenanbieter anfordern kannst, anstatt sie in deiner App zu bündeln.
    • Schriftarten können auch im XML-Format angefordert und in Layouts verwendet werden.
  • Emoji-Kompatibilitätsbibliothek:
    • EmojiCompat kann eine bestimmte CharSequence verarbeiten und EmojiSpans hinzufügen.
    • EmojiTextView und andere Widgets, um Emojis anzuzeigen.
    • FontRequestEmojiCompatConfig, um Emoji-Schriftarten von einem Schriftartenanbieter anzufordern.
  • TextView automatisch anpassen:
    • Neue Methoden in TextViewCompat sowie XML-Attribute zur Steuerung der automatischen Größenanpassung in TextView.
  • Leanback-Wiedergabesteuerung mit Suchunterstützung:
    • Neues PlaybackTransportRowPresenter, das Wiedergabesteuerungen mit einer SeekBar rendert.
    • Das neue PlaybackTransportControlGlue, das mit PlaybackTransportRowPresenter funktioniert und die Suche unterstützt.
    • Neue Basisklasse PlaybackSeekDataProvider für die App zur Bereitstellung von Such-Miniaturansichten für PlaybackTransportControlGlue.
  • Einstellungen – Datenspeicher:
    • Mit PreferenceDataStore können Sie jetzt Ihren eigenen Einstellungsspeicher implementieren, der mit neuen Methoden in Preference und PreferenceManager festgelegt wurde.

Bekannte Probleme

  • Die Integration von herunterladbaren Schriftarten und Emojis in die Google Play-Dienste funktioniert nur bei Google Play-Diensten ab Version 11, die derzeit über das Betaprogramm der Google Play-Dienste verfügbar ist.

Fehlerkorrekturen

  • MediaBrowserCompat.search() API funktioniert nicht (AOSP-Problem 262170)
  • ViewCompat.postInvalidateOnAnimation() löst eine Ausnahme aus (AOSP-Problem 80146)
  • onActivityCreated() hat Fragmente in der gelöschten Aktivität abgerufen
  • RecyclerView.isComputingLayout() sollte beim Prefetch „true“ zurückgeben
  • Wenn ein Fade-Übergang unterbrochen und umgekehrt wird, startet View die Animation von Anfang an. (Problem behoben, das aus dem Android Framework mitgenommen wurde.)
  • Transition.Fade ignoriert den anfänglichen Alpha von View (AOSP-Problem 221820)

Revision 26.0.0 Alpha 1

(März 2017)

Bitte beachte, dass 26.0.0-alpha1 eine Vorabveröffentlichung ist. Die API-Oberfläche kann sich ändern und enthält nicht unbedingt Funktionen oder Fehlerkorrekturen aus den neuesten stabilen Versionen der Support Library.

Wichtige Änderungen

Hinweis:Die mindestens erforderliche SDK-Version wurde auf 14 erhöht. Aus diesem Grund wurden viele APIs, die nur aus Gründen der Kompatibilität mit APIs mit weniger als 14 Jahren vorhanden waren, inzwischen eingestellt. Clients dieser APIs sollten zu den entsprechenden Frameworks migrieren, die auf der Referenzseite für jede eingestellte API angegeben sind.

  • Das support-percent-Modul wurde eingestellt. Clients dieses Moduls sollten zum neuen ConstraintLayout-Widget migrieren, das in SDK Manager als separates Artefakt bereitgestellt wird.
  • Das Support-Fragment-Modul ist nicht mehr vom support-media-compat-Modul abhängig.

Neue APIs

Viele neue Klassen, Methoden und Konstanten wurden hinzugefügt, um abwärtskompatible Unterstützung für Plattform-APIs zu bieten, die in O Preview hinzugefügt wurden.

  • IME_FLAG_NO_PERSONALIZED_LEARNING: IMEs können für Anwendungen im privaten Modus, z. B. Browser, auf Flags des Typs „Kein Lernen“ warten. Mit dieser Funktion können IMEs erkennen, ob sich eine Anwendung im privaten Modus befindet, und so die Lern- und adaptiven Funktionen deaktivieren, während sich die Anwendung in diesem Modus befindet.

Eine vollständige Liste der API-Änderungen zwischen 25.2.0 und 26.0.0-alpha1 finden Sie im Bericht zu API-Unterschieden der Supportbibliothek.

Fehlerkorrekturen

  • In einigen Fällen können einfache AutoTransition-Animationen durch „Sprünge“ unterbrochen werden. (AOSP-Problem 221816)

Version 25.4.0

(Juni 2017)

Wichtig: Die Supportbibliotheken sind jetzt über das Maven-Repository von Google verfügbar. Das Support-Repository muss nicht aus dem SDK Manager heruntergeladen werden. Weitere Informationen findest du unter Supportbibliothek einrichten.

Wichtige Änderungen

  • executePendingTransactions(), commitNow(), popBackStackImmediate() und ähnliche Transaktionsaufrufe sind während einer FragmentManager-Statusänderung nicht zulässig. Die Ausführung von Transaktionen durch einen Teilnehmer ist unsicher und FragmentManager erzwingt dies jetzt während seiner Statusänderungen.
  • Mit diesem Release der Support Library veröffentlichen wir auch multidex-Version 1.0.2. Diese Version umfasst die folgenden wichtigen Änderungen:
    • Ermöglicht Multidexing des Instrumentierungs-APKs.
    • Verwirft MultiDexTestRunner (wird stattdessen verwendet).
    • Bietet besseren Schutz vor einer fehlerhaften Verwaltung der Archivextraktion der Anwendung.
    • Es wurde ein Fehler behoben, der zu verworfenen temporären Dateien führen konnte.
    • Bietet eine schnellere Installation, wenn sie während eines Prozesses ausgeführt wird.
    • Es wurde ein Installationsfehler für API 19 und 20 behoben.

Neue und geänderte APIs

Pfadtransformation und Pfadinterpolation werden in AnimatedVectorDrawableCompat unterstützt. Beim Morphing des Pfades können die Formen von einem Pfad (angegeben als android:valueFrom) zu einem anderen Pfad (angegeben als android:valueTo) geändert werden, um komplexe und ansprechende visuelle Effekte zu erzielen. Mit der Pfadinterpolation können die Interpolatoren für AnimatedVectorDrawableCompat als Pfade angegeben werden (in der XML des Interpolators als android:pathData angegeben).

API-Unterschiede

Behobene Probleme

  • Null-Pointer-Ausnahme beim Herstellen einer Verbindung zu MediaBrowserServiceCompat
  • MediaBrowserCompat.search() API funktioniert nicht (AOSP-Problem 262170)
  • BrowseFragment onItemClicked-Callbacks fehlerhaft in Version 25.3.0
  • NullPointerException beim Scrollen nach oben und unten in VerticalGridView in 25.3.1
  • ClassCastException in SimpleArrayMap.allocArrays()

Version 25.3.1

(März 2017)

Behobene Probleme

  • Für SwitchCompat ist mindestens SDK-Version 14 erforderlich. (AOSP-Problem 251302)
  • Bei der physikbasierten Animation updateListener wird der erste Frame übersprungen.
  • Die Labelanimation „BottomNavigationView“ ist fehlerhaft.

Version 25.3.0

(März 2017)

Wichtige Änderungen

Metadaten der Supportbibliotheksversionen werden AndroidManifest.xml automatisch hinzugefügt, wenn ein Build mit Gradle erstellt wird. Dadurch werden Tracking-Versionen in öffentlichen Builds vereinfacht. Beispiele:

<meta-data android:name="android.support.VERSION" android:value="25.3.0" />

Einstellung von Produkten und Funktionen

Eine Reihe von Methoden und Klassen wurde in diesem Release eingestellt. Diese verworfenen APIs werden in einer zukünftigen Version entfernt und Entwickler sollten von ihnen migrieren. Weitere Informationen zur Migration weg von einer bestimmten API finden Sie in der zugehörigen Dokumentation.

ExifInterface
Die boolesche Methode getLatLong(float[]) wurde eingestellt. Verwenden Sie stattdessen die neue Methode getLatLong(), die keine Argumente annimmt und double[] zurückgibt.
mediacompat
PlaybackStateCompat.Builder.setErrorMessage(CharSequence) wurde eingestellt. Verwenden Sie stattdessen die neue Methode setErrorMessage(int, CharSequence), der ein Fehlercode und eine optionale Beschreibung übergeben werden.
EXTRA_SUGGESTION_KEYWORDS wurde eingestellt. Verwende stattdessen die Suchfunktion MediaBrowserCompat.
v7.recyclerview
LinearLayoutManager.getInitialItemPrefetchCount() wurde in LinearLayoutManager.getInitialPrefetchItemCount() umbenannt. Der alte Name wird weiterhin unterstützt, wird aber in einer zukünftigen Version entfernt.

Neue und geänderte APIs

appcompat-v7
Die neue Methode ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean) vereinfacht das Deaktivieren der Animation des Ein-/Aus-Symbols für die Navigationsleiste.
customtabs
Support für Nachrichtenkanäle hinzugefügt. Weitere Informationen finden Sie in der Referenz zu CustomTabsService.requestPostMessageChannel() und CustomTabsService.postMessage().
dynamic-animation
Neue physikbasierte Animationsbibliothek bietet eine Reihe von APIs zum Erstellen von Animationen, die dynamisch auf Nutzereingaben reagieren.
leanback-v17
Hintergründe mit Parallaxe werden jetzt unterstützt. Weitere Informationen finden Sie in der Referenz zu Parallax.
Es wurde ein TimePicker -Widget zum Auswählen von Zeiten auf einer TV-Oberfläche hinzugefügt.
mediacompat
Suchfunktion hinzugefügt. Weitere Informationen finden Sie in der Referenz zu MediaBrowserCompat.search() und MediaBrowserServiceCompat.onSearch().
Unterstützung für Zufallsmix und Wiederholungsmodus wurde hinzugefügt. Weitere Informationen finden Sie in der Referenz zu MediaSessionCompat.setRepeatMode() und setShuffleModeEnabled().

Behobene Probleme

Revision 25.2.0

(Februar 2017)

Wichtige Änderungen

Behobene Probleme

  • Diese Version behebt ein schwerwiegendes Mediarouter-Problem, bei dem die Verwendung eines A2DP-Geräts und Media Routing APIs dazu führen können, dass das Gerät nicht mehr reagiert und ein Neustart erforderlich ist.
  • Die Klasse FragmentManager.FragmentLifecycleCallbacks ist jetzt statisch.

Behobene Probleme

  • Das Gerät trennt die Verbindung zum WLAN, wenn Sie eine Folienpräsentation mit Bildschirmspiegelung zeigen
  • Die Medienschaltfläche hat Medien-Apps, die nicht selbst bei setMediaButtonReceiver() registriert wurden, nicht richtig verarbeitet
  • VectorDrawable-Fehler mit String-Ressource (AOSP-Problem 232407)
  • TextInputLayout blendet Hinweis und Text ein, wenn Text von XML festgelegt wird (AOSP-Problem 230171)
  • Speicherleck in MediaControllerCompat (AOSP-Problem 231441)
  • RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback() stürzt ab
  • RecyclerView stürzt beim Recycling von Ansichtshaltern ab (AOSP-Problem 225762)
  • getAllowGeneratedReplies() gibt für Aktionen innerhalb einer WearableExtender fälschlicherweise „false“ zurück

Version 25.1.1

(Januar 2017)

Wichtig: In der Klasse android.support.v7.media.MediaRouter in den Versionen 25.1.1 und 25.1.0 der Supportbibliothek gibt es einen bekannten Fehler. Wenn Ihre Anwendung Version 7 von MediaRouter verwendet, sollten Sie auf Support Library Revision 25.2.0 aktualisieren. Dadurch wird dieser Fehler behoben.

Wichtige Änderungen

  • Fragmenttransaktionen können jetzt innerhalb von und über mehrere Transaktionen hinweg optimiert werden. Durch das Optimieren von Fragmenttransaktionsvorgängen können Vorgänge ausgeschlossen werden, die abgebrochen werden. Angenommen, zwei Transaktionen werden gemeinsam ausgeführt: eine, die ein Fragment A hinzufügt, und eine zweite, die Fragment A durch Fragment B ersetzt. In diesem Fall wird möglicherweise der erste Vorgang abgebrochen und nur Fragment B hinzugefügt. Das bedeutet, dass Fragment A möglicherweise nicht den Erstellungs-/Löschzyklus durchläuft.

    Ein Nebeneffekt dieser Optimierung besteht darin, dass bei Fragmenten Statusänderungen außerhalb der erwarteten Reihenfolge auftreten können. Angenommen, eine Transaktion fügt Fragment A hinzu, eine zweite fügt Fragment B hinzu und eine dritte entfernt Fragment A. Ohne Optimierung könnte Fragment B erwarten, dass Fragment A während der Erstellung auch vorhanden ist, weil Fragment A nach dem Hinzufügen von Fragment B entfernt wird. Bei der Optimierung kann Fragment B nicht sicher sein, dass Fragment A vorhanden ist, während die Erstellung von B erfolgt, da die Erstellung und das Löschen von Fragment A möglicherweise durch die Optimierung entfernt werden.

    Diese Optimierung ist standardmäßig deaktiviert. Rufen Sie FragmentTransaction.setAllowOptimization(true) auf, um die Optimierung zu aktivieren.

  • Fragmente können jetzt ihre Übergänge und Animationen verschieben, bis sie mit Fragment.postponeEnterTransition() und Fragment.startPostponedEnterTransition() bereit sind. Diese API ähnelt der mit Aktivitätsübergängen verwendeten Activity.postponeEnterTransition() und Activity.startPostponedEnterTransition().

Behobene Probleme

Version 25.1.0

(Dezember 2016)

Wichtig: In der Klasse android.support.v7.media.MediaRouter in den Versionen 25.1.1 und 25.1.0 der Supportbibliothek gibt es einen bekannten Fehler. Wenn Ihre Anwendung Version 7 von MediaRouter verwendet, sollten Sie auf Support Library Revision 25.2.0 aktualisieren. Dadurch wird dieser Fehler behoben.

Wichtige Änderungen

  • Clients von verschachtelten RecyclerView-Widgets (z. B. vertikale Scroll-Listen von horizontalen Scroll-Listen) können erhebliche Leistungsvorteile erzielen, indem sie den Layout-Managern der inneren RecyclerView-Widgets mitteilen, wie viele Elemente vorbereitet werden müssen, bevor auf dem Bildschirm gescrollt wird. Rufen Sie LinearLayoutManager.setInitialPrefetchItemCount(N) auf, wobei N die Anzahl der Aufrufe ist, die pro innerem Element sichtbar sind. Wenn Ihre inneren, horizontalen Listen beispielsweise mindestens dreieinhalb Artikelaufrufe gleichzeitig anzeigen, können Sie die Leistung verbessern, indem Sie LinearLayoutManager.setInitialPrefetchItemCount(4) aufrufen. So kann RecyclerView frühzeitig alle relevanten Ansichten erstellen, während die äußere RecyclerView scrollt. Dadurch wird das Ruckeln beim Scrollen deutlich reduziert.
  • FragmentActivity.setSupportMediaController() und FragmentActivity.getSupportMediaController() wurden verworfen. Verwenden Sie die neuen statischen Methoden MediaControllerCompat.setMediaController() und MediaControllerCompat.getMediaController().
  • Wenn ein Client eine Widget-Färbung über die Appcompat-Tönung angibt (z. B. appcompat:buttonTint), muss er alle erforderlichen Zustände bereitstellen (z. B. „deaktiviert“, „gedrückt“ usw.). Dies entspricht der Art und Weise, wie Widget-Tönungen bei der Framework-Tönung angegeben werden.

Neue und geänderte APIs

Behobene Probleme

  • Die Ein/Aus-Schaltfläche für die Passwortsichtbarkeit hat die Bedienungshilfentests nicht bestanden.
  • Appcompat berücksichtigt state_enabled auf Pre-L-Geräten nicht.
  • Mechanismus zur Wiederherstellung des Fokus zu RecyclerView hinzugefügt. Dadurch wurde auch die Unterstützung von bevorzugten Fragmenten behoben, die bei der Verwendung der Steuerkreuz-Navigation, z. B. auf Android TV-Geräten, zu Bruch gehen.
  • Leanback: BrowseFragment-Abstürze mit deaktivierten Headern und leerem Adapter.
  • App-Kompatibilität: AlertDialog ist zu breit.
  • InputContentInfoCompat ruft requestPermission() auf, wenn releasePermission() aufgerufen werden sollte.
  • MediaBrowserCompat Abstürze.
  • CoordinatorLayout misst bzw. legt Ansichten fest, wenn die Sichtbarkeit auf GONE festgelegt ist.
  • AnimatedVectorDrawableCompat konnte auf API-Level unter 24 nicht gefärbt werden
  • Leanback-Bibliothek löst falsche Lint-Fehler aus
  • Palettenbibliothek verursachte Testfehler auf jedem API-Level
  • RecyclerView fehlgeschlagene Leanback-Tests
  • RecyclerView stürzt beim Recycling von Ansichtshaltern ab (AOSP-Problem 225762)
  • Fragment.onDestroy() nicht für Fragment im Backstack aufgerufen
  • Das Gitterwerk „CollapsingToolbarLayout“ wird beim Minimieren nicht gezeichnet
  • CoordinatorLayout.offsetChildByInset()-Würfe IllegalArgumentException
  • RecyclerView-Elemente werden animiert, die inneren RecyclerViews zu trennen und zukünftige Prefetches zu verhindern
  • Angehängte RecyclerView-Elemente können nicht per Verschachtelung abgerufen werden
  • Prefetch-Daten für verschachtelte RecyclerView-Elemente werden während des ersten Layouts verworfen
  • RecyclerView-Prefetch schlägt fehl, wenn zwei Drag-Ereignisse an derselben Position ankommen
  • RecyclerView sollte während des Renderings von RenderThread spekulatives Layout haben
  • Nachts konfigurierte Farbressourcen, die in Drawables konvertiert wurden, werden nicht immer ordnungsgemäß aus dem Ressourcencache gelöscht
  • FloatingActionButton: Die programmatische Festlegung von BackgroundTintList funktioniert nicht richtig (AOSP-Problem 227428).
  • TextInputLayout: Schriftart wird nicht für ErrorView festgelegt (AOSP-Problem 227803)
  • TextInputLayout verwendet immer eine helle Fehlerfarbe unter API 23 (AOSP-Problem 221992).
  • FloatingActionButton wird als gedrückt angezeigt, wenn der Zeiger den Cursor verlässt

Eine vollständige Liste der öffentlichen Fehlerkorrekturen finden Sie im AOSP Issue Tracker.

Einstellung von Produkten und Funktionen

Eine Reihe von Methoden und Klassen wurde in diesem Release eingestellt. Diese verworfenen APIs werden in einer zukünftigen Version entfernt und Entwickler sollten von ihnen migrieren. Weitere Informationen zur Migration weg von einer bestimmten API finden Sie in der zugehörigen Dokumentation.

Revision 25.0.1

(November 2016)

Behobene Probleme

Eine vollständige Liste der öffentlichen Fehlerkorrekturen finden Sie im AOSP Issue Tracker.

Version 25.0.0

(Oktober 2016)

Wichtige Änderungen

  • Der ContextCompat-Konstruktor wurde geschützt. Diese Klasse sollte nicht öffentlich instanziiert werden, kann aber durch Supportbibliotheken erweitert werden, die auf neuere API-Levels ausgerichtet sind.
  • Der ActivityCompat-Konstruktor wurde geschützt. Diese Klasse sollte nicht öffentlich instanziiert werden, kann aber durch Supportbibliotheken erweitert werden, die auf neuere API-Levels ausgerichtet sind.
  • getReferrer(Activity) wurde statisch.
  • android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V) wurde entfernt. Alle Clientimplementierungen dieser Methode sollten entfernt werden.
  • android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object) wurde entfernt. Nutzungen sollten durch die besser benannte Methode fromMediaSession() ersetzt werden.
  • android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object) wurde entfernt. Nutzungen sollten durch die besser benannte Methode MediaSessionCompat.QueueItem#fromQueueItem ersetzt werden.
  • android.support.v7.widget.Space wurde entfernt. Nutzungen sollten durch android.support.v4.widget.Space ersetzt werden.

Neue APIs

  • Die Klasse android.support.design.widget.BottomNavigationView implementiert das untere Navigationsmuster aus der Material Design-Spezifikation.
  • Das neue android.support.v13.view.inputmethod-Paket enthält Klassen für den Zugriff auf android.view.inputmethod.InputConnection-Funktionen, die nach API-Level 13 eingeführt wurden.
  • Die android.v7.widget.RecyclerView.DividerItemDecoration-Klasse bietet eine Basisimplementierung für vertikale oder horizontale Trennlinien zwischen Elementen.
  • Neue dekorierte Stile in android.support.v7.app.NotificationCompat, DecoratedCustomViewStyle und DecoratedMediaCustomViewStyle. Spiegelungsklassen wurden in Plattform-API 24 hinzugefügt.

Behobene Probleme

Eine vollständige Liste der öffentlichen Fehlerkorrekturen finden Sie im AOSP Issue Tracker.

Revision 24.2.1

September 2016

Behobene Probleme:

Eine vollständige Liste der öffentlichen Fehlerkorrekturen finden Sie im AOSP Issue Tracker.

Version 24.2.0

August 2016

Version 24.2.0 enthält die folgenden Änderungen:

Hinweis: In Version 24.2.0 wird Android 2.2 (API-Level 8) und niedriger nicht mehr unterstützt. Klassen und Methoden, die nur für diese Systemversionen existieren, sind jetzt als veraltet markiert und sollten nicht mehr verwendet werden. Diese verworfenen Klassen und Methoden werden möglicherweise in einem zukünftigen Release entfernt.

Aufteilung der v4-Supportbibliothek

In diesem Release wurde die Supportbibliothek v4 in mehrere kleinere Module aufgeteilt:

support-compat
Stellt Kompatibilitäts-Wrapper für neue Framework-APIs bereit, z. B. Context.getDrawable() und View.performAccessibilityAction().
support-core-utils
Bietet eine Reihe von Dienstprogrammklassen wie AsyncTaskLoader und PermissionChecker.
support-core-ui
Implementiert verschiedene UI-bezogene Komponenten, z. B. ViewPager, NestedScrollView und ExploreByTouchHelper.
support-media-compat
Backportiert Teile des Media-Frameworks, einschließlich MediaBrowser und MediaSession.
support-fragment
Portiert das Fragment-Framework rückportiert. Dieses Modul hat Abhängigkeiten von support-compat, support-core-utils, support-core-ui und support-media-compat.

Wenn du support-v4 in deinem Gradle-Skript aufführst, enthält dein APK aus Gründen der Abwärtskompatibilität alle diese Module. Um die APK-Größe zu reduzieren, empfehlen wir jedoch, nur die Module aufzulisten, die Ihre App benötigt.

API-Updates

Änderungen des Verhaltens

  • Wenn Sie die Tag-/Nacht-Funktion der Appcompat-Bibliothek verwenden, erstellt das System jetzt automatisch Ihre Aktivität neu, wenn sich der Tag-/Nachtmodus ändert (entweder aufgrund der Tageszeit oder aufgrund eines Aufrufs von AppCompatDelegate.setLocalNightMode()).
  • Snackbar wird jetzt hinter der Navigationsleiste angezeigt, wenn die Statusleiste durchsichtig ist.

MediaRouter-Bibliothek

Bluetooth-Geräte werden nicht mehr als Medienrouten aufgeführt. Das Routing von Audio an Bluetooth-Geräte wird jetzt ausschließlich auf Android-Systemebene gesteuert.

Einstellung von Produkten und Funktionen

Verworfene Klassen und Methoden werden in zukünftigen Versionen entfernt. Sie sollten so schnell wie möglich von diesen APIs migrieren.

  • Einige Methoden in den folgenden Klassen waren nur für API 8 und niedriger erforderlich und sollten nicht mehr verwendet werden. Verwenden Sie stattdessen die Framework-Implementierungen.
    • android.support.v4.view.KeyEventCompat: durch KeyEvent ersetzen
    • android.support.v4.view.MotionEventCompat: MotionEvent verwenden
    • android.support.v4.view.ViewCompat: View verwenden
    • android.support.v4.view.ViewConfigurationCompat: ViewConfiguration verwenden
  • AccessibilityServiceInfoCompat.getDescription() wurde zugunsten von AccessibilityServiceInfoCompat.loadDescription() eingestellt, mit dem eine korrekt lokalisierte Beschreibung zurückgegeben wird.
  • Sie sollten die Klasse ActivityCompat nicht direkt instanziieren. Die nicht statische Methode getReferrer(Activity) wird in einem zukünftigen Release statisch.
  • CoordinatorLayout.Behavior.isDirty() wurde verworfen und wird von CoordinatorLayout nicht mehr aufgerufen. Alle Implementierungen sowie Aufrufe dieser Methode sollten entfernt werden.
  • MediaSessionCompat.obtain() wurde verworfen und durch die Methode fromMediaSession() mit einem besser benannten Namen ersetzt.
  • MediaSessionCompat.QueueItem.obtain() wurde verworfen und durch die Methode fromQueueItem() mit einem entsprechenden Namen ersetzt.
  • Mehrere abstrakte Klassen wurden verworfen und durch Schnittstellen ersetzt, die ihre Framework-Äquivalente besser widerspiegeln.
  • CustomTabsSession.setToolbarItem() wurde eingestellt und durch die RemoteViews-basierte setSecondaryToolbarViews() ersetzt.

Fehlerkorrekturen

Die folgenden bekannten Probleme wurden in Version 24.2.0 behoben:

  • Achten Sie darauf, dass der Indikator SwipeRefreshLayout angezeigt wird, wenn setRefreshing(true) vor dem ersten Messdurchlauf aufgerufen wird (AOSP-Problem 77712).
  • Verhindern, dass TabLayout beim Wechseln von Seiten flackert (AOSP-Problem 180454)
  • Vermeiden Sie ClassNotFoundException beim Unmarshalling von SavedState auf API-Level 11 und niedriger (AOSP-Problem 196430).

Eine vollständige Liste der öffentlichen Fehlerkorrekturen finden Sie im AOSP Issue Tracker.

Version 24.1.1

Juli 2016

Behobene Probleme:

  • Es wurde ein Problem in Version 24.1.0 behoben, das sich auf Ressourcen-IDs ausgewirkt hat, die von Supportbibliotheken gemeinsam genutzt werden. Bei Apps, die auf Supportbibliotheken mit Ressourcen (z. B. Design und App-Kompatibilität) angewiesen waren, traten Probleme auf, die durch nicht übereinstimmende Ressourcen-IDs verursacht wurden.

Version 24.1.0

Juli 2016

Änderungen an der Supportbibliothek für Version 4:

Behobene Probleme:

  • TabLayout.setCustomView(null) führt zu NullPointerException (AOSP-Problem 214753).
  • Mit TabLayout werden benutzerdefinierte Tabs fälschlicherweise hervorgehoben (AOSP-Problem 214316).
  • AppCompatTextHelper verwendet ein falsch sortiertes Attributarray (AOSP-Problem 214366).
  • Bei Verwendung des benutzerdefinierten ContextWrappers kann nicht auf VectorDrawable aus der Drawable-Container-XML verwiesen werden (AOSP-Problem 214055).
  • ViewDragHelper.saveLastMotion() wirft ArrayIndexOutOfBoundsException (AOSP-Problem 212945)
  • „BottomSheetBehavior“ wird bei Verwendung von „setState(STATE_EXPANDED)“ auf die alte Inhaltshöhe erweitert (AOSP-Problem 213660).
  • CollapsingToolbarLayout verarbeitet keine anpinnbaren untergeordneten Elemente mit einem oberen oder unteren Rand (AOSP-Problem 213001).
  • Der Leanback-Suchtitel unterstützt nicht die RTL-Ausrichtung (AOSP-Problem 213461).
  • PagerTabStrip verschwindet aufgrund einer fehlenden übernommenen Anmerkung (AOSP-Problem 213359)
  • Datenbindung wirft NullPointerException aus, wenn ein boolescher Wert zum Festlegen bedingter Flags verwendet wird (AOSP-Problem 191841).
  • CoordinatorLayout reagiert nicht auf „setFitsSystemWindows()“ (AOSP-Problem 212720).
  • BottomSheetBehavior stürzt beim Festlegen des Anfangsstatus ab (AOSP-Problem 203114).
  • ViewPager überspringt Seiten, wenn der Seitenindex einen hohen Wert hat (AOSP-Problem 211734).
  • BottomSheetBehavior funktioniert nicht mit dynamischen Layouts (AOSP-Problem 205226).

Version 24.0.0

Juni 2016

Änderungen an der Supportbibliothek für Version 4:
  • Fragment.commitNow() für synchronen Commit hinzugefügt
  • NotificationCompat.MessagingStyle für Unterhaltungen mit mehreren Parteien hinzugefügt
  • NotificationManagerCompat.areNotificationsEnabled() und getImportance() wurden hinzugefügt
  • MediaSessionCompat spiegelt jetzt die Funktionalität von MediaSession und ruft setMediaButtonReceiver() nicht mehr automatisch auf

Hinweis:Nur MediaBrowserServiceCompat in Version 24.0.0 ist aufwärtskompatibel mit zukünftigen Android-Versionen über API 24 hinaus. Wenn Sie ältere Versionen verwenden, führen Sie ein Update auf diese Version durch, um die Kompatibilität sicherzustellen.

Änderungen an der Appcompat-Bibliothek von Version 7:
  • Unterstützung für Verweise auf ColorStateList-Themenobjekte aus XML hinzugefügt
Änderungen an der Design Support Library:
Änderungen an der Leanback-Bibliothek für Version 17:
  • OnboardingFragment wurde hinzugefügt, um einen Begrüßungs- und Einrichtungsablauf beim ersten Ausführen zu bieten
Änderungen für benutzerdefinierte Tabs:
  • Die Bereitstellung einer RemoteViews-Hierarchie für die sekundäre Symbolleiste wird jetzt unterstützt.
  • CustomTabsClient.connectAndInitialize() für das Aufwärmen einer Zeile hinzugefügt

Version 23.4.0

Mai 2016

Änderungen an der Supportbibliothek für Version 4:
  • Ein Problem wurde behoben, bei dem Fragmente in der falschen Reihenfolge hinzugefügt wurden. (Problem 206901)
  • Ein Problem wurde behoben, bei dem die App-Leiste nach dem Scrollen außerhalb des Bildschirms nicht gezeichnet wurde. (Problem 178037)
Änderungen an der Appcompat-Bibliothek von Version 7:
Änderungen an der Design Support Library:
Änderungen an der Vector Drawable-Bibliothek:

Version 23.3.0

April 2016

Änderungen an der Supportbibliothek für Version 4:
  • AppLaunchChecker wurde hinzugefügt, damit du verfolgen kannst, wie deine App in der Vergangenheit vom Nutzer gestartet wurde. hasStartedFromLauncher() gibt an, ob der Nutzer deine App schon einmal über den Startbildschirm gestartet hat oder ob sie nur auf andere Weise gestartet wurde, z. B. um bestimmte Web-URLs anzusehen.
  • Ein Speicherleck in MediaBrowserServiceCompat.mConnections wurde behoben. (Problem 205220)
  • Ein Problem wurde behoben, bei dem ViewPager beim Umblättern einer Seite Seitenränder nicht berücksichtigt. (Problem 203816)
  • Fragment.onRequestPermissionsResult() wird jetzt an untergeordnete Fragmente übergeben.
Änderungen an der Appcompat-Bibliothek von Version 7:
Änderungen an der Mediarouter-Bibliothek für Version 7:
Änderungen an der Einstellungsbibliothek für Version 7:
Änderungen an der recyclerview-Bibliothek der Version 7:
Änderungen an der Design Support Library:

Version 23.2.1

März 2016

Änderungen an der Supportbibliothek für Version 4:
Änderungen an der Appcompat-Bibliothek von Version 7:
  • Die Abhängigkeit von Vektor-Assets wurde rückgängig gemacht, damit Entwickler, die die Appcompat-Bibliothek verwenden, nicht VectorDrawable und die zugehörigen Build-Flags verwenden müssen.
  • Kompatibilitätsproblem mit dem Nachtmodus und API-Level 23 wurde behoben. (Problem 201910)
  • Kompatibilitätsproblem mit SwitchCompat und API-Level 7 wurde behoben. (Problem 201942)
  • Ein Problem bei der Weitergabe von Konfigurationswerten in Ressourcenobjekte wurde behoben. Problem 201928 wurde behoben.
  • Ein Kompatibilitätsproblem wurde behoben, bei dem die android.support.v7.app.NotificationCompat.MediaStyle-Schaltfläche „Abbrechen“ auf API-Level 21 und niedriger nicht mehr sichtbar war. (Problem 202156)
  • Ein Kompatibilitätsabsturz mit AppCompatSpinner auf API-Level 21 und niedriger wurde behoben. (Problem 202246)
  • Der Stil app:textAllCaps = "false" funktionierte nicht. Das Problem wurde behoben. (Problem 202117)
  • Ein Absturz beim Wiederherstellen von SearchView wurde behoben. (Problem 201836)
  • Ein Speicherleck, das beim Tönen von Drawable-Ressourcen mit AppCompat auftrat, wurde behoben. (Problem 202379)
  • Ein Problem mit KeyEvent auf API-Level 11 und niedriger wurde behoben. (Problem 202939)
Änderungen an der Kartenansichtsbibliothek für Version 7:
Änderungen an der recyclerview-Bibliothek der Version 7:
  • Es wurden Fehler im Zusammenhang mit verschiedenen methodenspezifischen Methoden behoben. (Problem 201856)
  • Der Sperrzeitraum wurde verkürzt, in dem RecyclerView keine Adapteränderungen während der Berechnung eines Layouts oder Scrollens zulässt. (Problem 202046)
  • Ein Absturz beim Aufrufen von notifyItemChanged() für ein Element, das außerhalb des sichtbaren Bereichs aufgetreten ist, wurde behoben. (Problem 202136)
  • Ein Absturz wurde behoben, der auftrat, wenn RecyclerView.LayoutManager eine Ansicht in derselben Messkarte hinzufügt und entfernt. (Problem 193958)
Änderungen an der Mediarouter-Bibliothek für Version 7:
Änderungen für die Leanback-Bibliothek von Version 17:
  • Ein Problem mit GridLayout.onAddFocusables(), durch das das falsche Element ausgewählt wurde, wurde behoben.
  • Ein Problem wurde behoben, bei dem GuidedStepFragment-Aktionen verschwanden, nachdem eine Aktion minimiert wurde.
Änderungen an der Design Support Library:
  • Ein durch Tab-Pooling verursachter TabLayout-Absturz wurde behoben. (Problem 201827)
  • Es wurde ein Fehler in NavigationView behoben, durch den die falsche Farbe ausgewählt wurde. (Problem 201951)
  • Ein Fehler wurde behoben, bei dem setBackgroundTintList() die Hintergrundfarbe nicht mehr ändern konnte. (Problem 201873)
  • Es wurde ein Problem behoben, bei dem AppBarLayout nicht vollständig aus dem sichtbaren Bereich gescrollt wurde, wenn es mit android:fitsSystemWindows = “true” verwendet wurde. (Problem 201822)
  • In BottomSheetDialog wurden kurze Inhaltsaufrufe nicht richtig angezeigt. Dieses Problem wurde behoben. (Problem 201793)
  • Es wurde ein Problem behoben, bei dem BottomSheetDialogFragment sporadisch verschoben wurde, wenn Inhalte darin geändert wurden. (Problem 202125)
  • Absturz des TextInputLayout-Zähler-Links wurde behoben.
  • Ein Absturz wurde behoben, der auftrat, wenn TextInputLayout.getCounterMaxLength() einen gespeicherten Status wiederhergestellt hat. (Problem 202375)
  • Ein ClassCastException wurde behoben, das auftrat, wenn ein CoordinatorLayout mit dem gespeicherten Status einer Ansicht wiederhergestellt wurde, die kein CoordinatorLayout war.
Änderungen für VectorDrawableCompat:
  • Es wurde ein Fehler behoben, bei dem für android:tintMode die falsche Variable gelesen wurde. (Problem 201907)

Version 23.2.0

Februar 2016

Änderungen an der Supportbibliothek für Version 4:
  • MediaBrowserCompat für MediaBrowser-Support und MediaBrowserServiceCompat für MediaBrowserService-Support hinzugefügt. Das ist hilfreich, wenn der Hintergrunddienst einer Medien-App mit UI-Komponenten verbunden und in Android Auto und Android Wear integriert werden soll, ohne dass API-Level 21 oder höher erforderlich ist.
  • Das System ruft jetzt onActivityResult() für ein verschachteltes FragmentActivity auf.
Änderungen an der AppCompat-Bibliothek v7:
  • Der Nachtmodus wurde für API-Level 14 und höher hinzugefügt. Du kannst je nach Tageszeit oder app-spezifischen Einstellungen zwischen Hellen und Dunklen Designs in Material wechseln.
    • Hier findest du die Tages- und Nachtdesigns: <sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
    • AppCompatDelegate.setDefaultNightMode(): Legt den Standardmodus der Anwendung fest, indem eine der folgenden Konstanten übergeben wird:
      • MODE_NIGHT_AUTO
      • MODE_NIGHT_NO
      • MODE_NIGHT_YES
      • MODE_NIGHT_FOLLOW_SYSTEM
    • AppCompatDelegate.setLocalNightMode(): überschreibt die Einstellung für den Nachtmodus für die lokale App-Komponente.
    • AppCompatDelegate.getDefaultNightMode(): gibt den standardmäßigen Nachtmodus zurück.
Änderungen an der v7 Mediarouter-Bibliothek:
Änderungen an der Design-Supportbibliothek:
  • Tabellen am unteren Rand werden jetzt unterstützt. Mit dem Interaktions-Plug-in BottomSheetBehavior kann eine untergeordnete Ansicht einer CoordinatorLayout als Ansicht am unteren Rand fungieren. Die Basisklasse BottomSheetCallback bietet Callbacks zum Überwachen von Ereignissen am unteren Rand.
Änderungen an der Supportbibliothek für CustomTabs:
  • In benutzerdefinierten Chrome-Tabs können Apps jetzt zusätzlich zur oberen Aktionsschaltfläche eine untere Leiste mit Aktionsschaltflächen einfügen.
  • CustomTabsIntent.Builder.addToolBarItem(): Einem benutzerdefinierten Tab wird eine Aktionsschaltfläche hinzugefügt. Hiermit können Sie mehrere Schaltflächen hinzufügen.
  • CustomTabsSession.setToolBarItem(): Aktualisiert die visuellen Elemente für Symbolleistenelemente. Diese Methode ist nur erfolgreich, wenn ihr eine gültige ID zugewiesen wird und die Browsersitzung im Vordergrund ausgeführt wird.
Supportbibliothek für VectorDrawable hinzugefügt:
  • Hinzugefügte Klassen:
    • VectorDrawableCompat
    • AnimatedVectorDrawableCompat
  • Bietet Unterstützung für VectorDrawable-Assets für Anwendungen, die auf API-Level 7 oder höher ausgeführt werden. AnimatedVectorDrawable-Assets werden auch auf API-Level 11 oder höher unterstützt. Vektor-Assets können erheblich kleiner sein als Bild-Assets. Sie tragen dazu bei, die App-Größe zu verringern, da weniger Assets für die Unterstützung mehrerer Gerätebildschirme erforderlich sind.
  • Diese Bibliothek ist jetzt eine Abhängigkeit der AppCompat-Bibliothek von Version 7, sodass Entwickler und AppCompat ganz einfach Vektor-Drawables verwenden können. Wenn Sie VectorDrawableCompat innerhalb von ImageButton oder ImageView verwenden möchten, verwenden Sie das XML-Attribut app:srcCompat oder die Methode setImageResource().
  • Wenn Sie weiterhin auf Attribut-IDs auf API-Level 20 oder niedriger verweisen möchten, fügen Sie der Datei build,gradle das folgende appt-Flag hinzu:
    • Wenn Sie ein Android-Plug-in für Gradle 1.5.0 oder niedriger verwenden, fügen Sie der Datei build.gradle Folgendes hinzu:
    • android {
        defaultConfig {
          // Stops the Gradle’s automatic rasterization of vectors
          generatedDensities = []
        }
         // Flag that tells aapt to keep the attribute ids
        aaptOptions {
          additionalParameters "--no-version-vectors"
        }
      }
      
    • Wenn Sie ein Android-Plug-in für Gradle 2.0.0 oder höher verwenden, fügen Sie der Datei build.gradle Folgendes hinzu:
    • android {
        defaultConfig {
          vectorDrawables.useSupportLibrary = true
        }
      }
      
Änderungen an der Leanback-Bibliothek von v17:
  • Der GuidedStepFragment, einer Komponente, die Nutzer durch eine oder mehrere Entscheidungen führt, wurden um neue Funktionen erweitert:
    • Schaltflächenaktionen zu GuidedAction hinzugefügt:
      • GuidedStepFragment.setButtonActions(): legt eine Liste mit GuidedAction-Schaltflächen fest, die der Nutzer in der Ansicht „Aktionen“ auswählen kann.
    • Beschreibungsfelder können jetzt bearbeitet werden:
      • GuidedAction.Builder.descriptionEditable(): Durch die Übergabe von true wird die Beschreibung der Aktion so festgelegt, dass sie bearbeitet werden kann.
      • GuidedAction.getEditDescription(): gibt die bearbeitbare Beschreibung als CharSequence zurück.
    • Es wurden Drop-down-Listen mit Unteraktionen hinzugefügt:
      • GuidedAction.setSubActions(): legt eine GuidedAction-Liste als Drop-down-Menü mit Unteraktionen fest.
  • Das GuidedDatePickerAction-Widget für die DatePicker-Funktion wurde hinzugefügt:
    • Das Datum wird anhand der Spalten für Jahr, Monat und Tag ausgewählt und kann angepasst werden.
    • GuidedDatePickerAction.Builder: Builder-Klasse für das GuidedDatePickerAction-Objekt.
    • GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat): Legen Sie das gewünschte Datumsformat fest, indem Sie den entsprechenden dreistelligen String-Wert übergeben, z.B. “YMD” oder “MDY”. Alternativ können Sie das XML-Attribut datePickerFormat verwenden.
Änderungen an der RecyclerView-Bibliothek der v7:
  • In RecyclerView gibt es jetzt eine optionale Funktion namens AutoMeasure, mit der RecyclerView.LayoutManager Inhalte ganz einfach zusammenfassen oder verschiedene Messspezifikationen verarbeiten können, die vom übergeordneten der RecyclerView bereitgestellt werden. Sie unterstützt alle vorhandenen Animationsfunktionen von RecyclerView.
    • Wenn Sie eine benutzerdefinierte RecyclerView.LayoutManager haben, rufen Sie setAutoMeasureEnabled(true) auf, um die neue AutoMeasure API zu verwenden. Bei allen integrierten RecyclerView.LayoutManager-Objekten ist die automatische Messung standardmäßig aktiviert.
    • RecyclerView.LayoutManager ignoriert einige RecyclerView.LayoutParams-Einstellungen wie MATCH_PARENT in der Scrollrichtung nicht mehr.

      Hinweis:Diese aufgehobenen Einschränkungen können zu unerwartetem Verhalten in Ihren Layouts führen. Achten Sie darauf, die richtigen Layoutparameter anzugeben.

  • Wenn ein RecyclerView.ViewHolder mit Nutzlastinformationen aktualisiert wird, deaktiviert DefaultItemAnimator jetzt Änderungsanimationen.
  • Sie können jetzt die Escape-Geschwindigkeit unter ItemTouchHelper ändern, um die Wischempfindlichkeit zu steuern. Wenn du das Wischen erleichtern oder schwieriger machen möchtest, überschreibe getSwipeEscapeVelocity(float defaultValue) und ändere defaultValue.

Version 23.1.1

November 2015

Änderungen an der recyclerview-Bibliothek der Version 7:
  • Ein Absturz wurde behoben, der auftrat, wenn du eine von der ItemTouchHelper-Dienstprogrammklasse bereitgestellte Aktion zum Schließen durch Wischen ausführst und dann ein Element hinzufügst. (Problem 190500)
Änderungen an der v7-Präferenzbibliothek:
  • Ein Problem bei der Nutzung von ProGuard wurde behoben. (Problem 183261)
Änderungen an der Leanback-Supportbibliothek für Version 17:
  • Mehrere interne Probleme in dieser Bibliothek wurden behoben.
Änderungen an der Design-Supportbibliothek:
  • Die Methode getHeaderView wurde der Klasse NavigationView hinzugefügt.
  • Es wurde ein Problem mit transparentem Hintergrund für ein FloatingActionButton-Objekt auf Geräten mit Android 4.0 (API-Level 15) und niedriger behoben. (Problem 183315)

Version 23.1.0

Oktober 2015

Änderungen an der Supportbibliothek für Version 4:
  • Unterstützung der OnScrollChangedListener-Schnittstelle wurde dem NestedScrollView-Widget hinzugefügt. Damit können Sie Callbacks empfangen, wenn sich die X- oder Y-Scrollposition ändert.
  • Die Klasse MediaButtonReceiver wurde zum Weiterleiten empfangener Wiedergabesteuerungen zu einem Dienst hinzugefügt, der die Klasse MediaSessionCompat verwaltet. Die Klasse MediaSessionCompat hat einen Konstruktor, der im Manifest automatisch einen Empfänger für Medienschaltflächen finden kann. Ein Empfänger für Medienschaltflächen ist ein wichtiger Teil der Wiedergabesteuerung über die Hardware- oder Bluetooth-Steuerung.
Änderungen an der Appcompat-Bibliothek der Version 7:
  • Seekbar- und ImageButton-Widgets für Material Design wurden hinzugefügt.
  • Das ImageView-Widget wurde aktualisiert, um die Funktion „tint“ zu unterstützen.
  • Design des SwitchCompat-Widgets wurde aktualisiert.
Änderungen an der v7 Mediarouter-Bibliothek:
  • Der Klasse MediaRouteChooserDialog wurden die folgenden Funktionen hinzugefügt:
    • Zeigt eine Ladeseite an und ermittelt Medienroutenanbieter.
    • Enthält ein Symbol für den Gerätetyp, damit das Gerät leichter identifiziert werden kann.
    • Die Routen werden entsprechend ihrer Nutzungshäufigkeit in der aktuellen App sortiert.
    • Unterstützt Querformat.
  • Der Klasse MediaRouteControllerDialog wurden die folgenden Funktionen hinzugefügt:
    • Erkennt Bildschirmstreaming und bietet eine korrekte Beschreibung.
    • Unterstützt verschiedene Größen und Seitenverhältnisse von Albumcovern und lädt das Artwork asynchron.
    • Die Inhaltsfarbe wird automatisch anhand der Hauptfarbe der App ausgewählt.
    • Passt das Layout des Dialogfelds an den verfügbaren Bildschirmplatz auf dem Gerät an.
    • Unterstützt Querformat.
Änderungen an der Vorlagenbibliothek für Version 7:
  • Die Methode setRegion() wurde hinzugefügt, um das Extrahieren von Farbe aus einem bestimmten Bereich eines Bitmap-Objekts zu unterstützen.
Änderungen an der recyclerview-Bibliothek der Version 7:
  • Der ItemAnimator-Klasse wurde eine verbesserte Animations-API für bessere Anpassungen hinzugefügt:
    • Beim Ändern von Animationen werden nicht mehr zwei Kopien des ViewHolder-Objekts erzwungen, wodurch Animationen von Elementinhalten aktiviert werden. Außerdem entscheidet das ItemAnimator-Objekt, ob es dasselbe ViewHolder-Objekt wiederverwenden oder ein neues erstellen möchte.
    • Die neue Information Record API gibt der ItemAnimator-Klasse die Flexibilität, Daten an der richtigen Stelle im Layoutlebenszyklus zu erfassen. Diese Informationen werden später an die animierten Callbacks übergeben.
  • Für diese nicht abwärtskompatible API-Änderung wurde ein einfacher Übergangsplan bereitgestellt:
    • Wenn Sie die ItemAnimator-Klasse zuvor erweitert haben, können Sie Ihre Basisklasse in SimpleItemAnimator ändern. Ihr Code sollte dann wie zuvor funktionieren. Die Klasse SimpleItemAnimator stellt die alte API bereit, indem sie die neue API umschließt.
    • Einige Methoden wurden aus der Klasse ItemAnimator entfernt. Der folgende Code wird nicht mehr kompiliert:
    • Kotlin

      recyclerView.itemAnimator.supportsChangeAnimations = false
      

      Java

      recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
      

      Sie können ihn durch Folgendes ersetzen:

      Kotlin

      val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator
      animator?.supportsChangeAnimations = false
      

      Java

      ItemAnimator animator = recyclerView.getItemAnimator();
      if (animator instanceof SimpleItemAnimator) {
         ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
      }
      
Änderungen an der Support Library für v7, v14 und v17:
  • APIs zur Steuerung von EditText-Dialogfeldern wurden entfernt.
Änderungen an der Leanback-Supportbibliothek für Version 17:
  • Eine Version der GuidedStepFragment-Klasse für die Supportbibliothek (erweitert android.support.v4.app.Fragment) und verbesserte Animationen und Übergänge hinzugefügt.
  • Die Klasse GuidedStepFragment wurde aktualisiert, sodass sie über vorhandenen Inhalten platziert werden kann.
  • Der Klasse SearchFragment wurde die Möglichkeit hinzugefügt, verschiedene Arten von Suchvervollständigungen zu annotieren.
  • Für die Klasse VerticalGridFragment wurde die Unterstützung für gestaffelte Folienübergänge hinzugefügt.
Änderungen an der Design-Supportbibliothek:
  • Das TextInputLayout-Widget wird jetzt für das Zählen von Zeichen unterstützt.
  • Unterstützung für das Andocken am Rand wurde der Klasse AppBarLayout durch Hinzufügen der Konstante SCROLL_FLAG_SNAP hinzugefügt. Wenn das Scrollen endet und die Ansicht nur teilweise sichtbar ist, wird die Ansicht angedockt und zum nächstgelegenen Rand gescrollt.
  • Zusätzliche Unterstützung für benutzerdefinierte Ansichten in der NavigationView-Klasse mithilfe des app:actionLayout-Attributs oder der MenuItemCompat.setActionView()-Methode.
Änderungen an der Bibliothek zur Unterstützung benutzerdefinierter Tabs:
  • Die Methode enableUrlBarHiding() wurde der Klasse CustomTabsIntent hinzugefügt. Damit kann der Client anpassen, ob die URL-Leiste beim Scrollen automatisch ausgeblendet werden soll.
  • Die Methode setActionButton() wurde der Klasse CustomTabsSession hinzugefügt. Damit kann der Kunde das Symbol für eine benutzerdefinierte Aktionsschaltfläche auf einem bereits gestarteten benutzerdefinierten Tab ändern.
  • Die Konstanten TAB_SHOWN und TAB_HIDDEN wurden als neue Ereignisse für die Methode onNavigationEvent der Klasse CustomTabsCallback hinzugefügt.

Revision 23.0.1

September 2015

Änderungen an der Support Library für v7 und v14:
  • Die Layout- und Stildateien für Material Design wurden hinzugefügt. (Problem 183376)
Änderungen an der Appcompat-Bibliothek der Version 7:
  • Absturzprobleme für die Fragment-Klasse wurden behoben, indem die Nutzung von Hardwareebenen auf Android 4.1 (API-Level 16) und höher beschränkt wurde. (Problem 183896)
  • Es wurde ein Problem behoben, bei dem Hardwaretasten nicht funktionierten, wenn eine Aktivität mithilfe der Methode setSupportActionBar() festgelegt hatte, dass die Klasse Toolbar als ActionBar fungiert. (Problem 183334)
  • Die AppCompatDialogFragment-Klasse wurde aktualisiert, sodass der Fehler Windows feature must be requested before adding content nicht mehr ausgegeben wird. (Problem 183186)
Änderungen an der Design-Supportbibliothek:
  • Die AppBarLayout-Klasse wurde korrigiert, sodass sie nach der Rotation jetzt korrekt dargestellt wird. (Problem 183109)
  • Die TabLayout-Klasse wurde korrigiert, sodass sie jetzt korrekt funktioniert, wenn ein Nutzer nach dem Wischen klickt. (Problem 183123)
Änderungen an der Bibliothek zur Unterstützung benutzerdefinierter Tabs:
  • Der Wert von minSdkVersion wurde für die Versionsunterstützung von 16 auf 15 gesenkt.
  • Eine Möglichkeit zum Generieren eines CustomTabsSessionToken aus einem Intent wurde hinzugefügt.

Version 23

August 2015

Neue Supportbibliotheken hinzugefügt:

Eine vollständige Liste der Änderungen an der Support Library finden Sie im Bericht zu Unterschieden der Support Library API.

Version 22.2.1

Juli 2015

Änderungen an der Design-Supportbibliothek:
  • Die Methoden hide() und show() wurden der Klasse FloatingActionButton für das programmatische Auslösen von Animationen hinzugefügt.
  • Der Klasse Snackbar wurde die Konstante LENGTH_INDEFINITE hinzugefügt, damit eine Snackbar so lange angezeigt wird, bis sie geschlossen oder eine andere Snackbar angezeigt wird. Außerdem wurden die Methoden setActionTextColor(int) und setActionTextColor(ColorStateList) hinzugefügt.
  • Der Klasse TabLayout wurde die Methode getSelectedTabPosition() zum Abrufen des aktuell ausgewählten Tabs hinzugefügt.
  • Für die android.support.v7.app.NotificationCompat.MediaStyle-Klasse wurde eine vollwertige API für die Methodenverkettung bereitgestellt.
  • Der RecyclerView wurden einfache Methoden für das Batch-Einfügen von Elementen hinzugefügt.

Eine vollständige Liste der Änderungen an der Support Library finden Sie im Bericht zu Unterschieden der Support Library API.

Version 22.2.0

Mai 2015

Die Design Support-Bibliothek wurde hinzugefügt:
  • TextInputLayout zum Anzeigen von Hinweisen und Fehlertexten für EditText als unverankerte Labels hinzugefügt.
  • FloatingActionButton wurde hinzugefügt, um eine primäre Aktion auf Ihrer Benutzeroberfläche als unverankerte Aktionsschaltfläche zu implementieren, die entweder Standard- oder Minigrößen unterstützt.
  • Snackbar wurde hinzugefügt, um einfaches Feedback mit einer optionalen Aktion in einer animierten Snackbar bereitzustellen.
  • TabLayout wurde hinzugefügt, um feste und scrollbare Tabs sowie eine einfache Einbindung in ViewPager zu implementieren.
  • NavigationView wurde zur Implementierung von Inhalten der Navigationsleiste hinzugefügt, darunter die Möglichkeit, Menüelemente über eine Menüressource aufzublähen.
  • Das allgemeine Layout CoordinatorLayout wurde hinzugefügt, um Abhängigkeiten zwischen gleichgeordneten Ansichten zu erstellen und über CoordinatorLayout.Behavior einfache Scroll-Reaktionen zwischen Komponenten zu ermöglichen. Viele der Komponenten der Designbibliothek sind einem CoordinatorLayout untergeordnet.
  • AppBarLayout wurde hinzugefügt. Es wurde ein Container für eine Toolbar und andere Ansichten (z. B. TabLayout) hinzugefügt, mit denen auf Scroll-Ereignisse reagiert werden kann. Dazu wird durch Scrollen aus dem Bildschirm gescrollt, der als Reaktion auf Scrollen nach unten sichtbar wird oder vor dem Scrollen aus dem bzw. auf den Bildschirm minimiert.
  • CollapsingToolbarLayout zum Steuern der Minimierung von Toolbar hinzugefügt. Eine Symbolleiste kann auf folgende Weise minimiert werden: indem Sie Komponenten an den oberen Bildschirmrand anheften, während sie minimiert werden, so dass Komponenten (z. B. ImageView) mit Parallaxe scrollen können, oder indem eine Inhalts-Glasfaserfarbe hinzugefügt wird, wenn die Ansicht teilweise minimiert ist.
Änderungen an der Supportbibliothek für Version 4:
Änderungen an der Appcompat-Bibliothek Version 7:

Eine vollständige Liste der Änderungen an der Support Library finden Sie im Bericht zu Unterschieden der Support Library API.

Version 22.1.0

April 2015

Änderungen an der Anmerkungsbibliothek:
  • Die Annotationsbibliothek wurde hinzugefügt, um erweiterte Codeprüfungen zu unterstützen. Anmerkungen werden als Metadaten-Tags hinzugefügt, die Sie an Variablen, Parameter und Rückgabewerte anhängen, um Methodenrückgabewerte, übergebene Parameter sowie lokale Variablen und Felder zu untersuchen.
Änderungen an der Supportbibliothek für Version 4:
Änderungen an der Appcompat-Bibliothek Version 7:
Änderungen für die Leanback-Bibliothek für Version 17:
Änderungen an der recyclerview-Bibliothek der Version 7:
  • SortedList-Klassen wurden hinzugefügt, um Elemente in einer Listenreihenfolge anzuzeigen und bei Änderungen an der Liste eine Benachrichtigung zu senden.
  • Die Klasse SortedListAdapterCallback wurde hinzugefügt, die eine sortierte Liste an eine RecyclerView.Adapter-Klasse binden kann.
Änderungen an der Renderscript-Bibliothek Version 8:

Version 22

März 2015

Änderungen an der Supportbibliothek für Version 4:
Änderungen an der Appcompat-Bibliothek Version 7:
Änderungen für die Leanback-Bibliothek für Version 17:
  • Die Methoden getRecycledPoolSize() und setRecycledPoolSize() wurden hinzugefügt, um benutzerdefinierte Größen von recycelten Pools zuzulassen.
  • Das Attribut WRAP_CONTENT wurde der Einstellung für die Layoutbreite hinzugefügt, um umschlossene Inhalte für Titelsymbole zu unterstützen.
  • R.transition wurde in XML definiert, um Übergangsupdates zu verbessern.
  • Von rechts nach links angeordnete Layouts werden jetzt unterstützt.
  • Der Klasse PlaybackOverlayFragment wurde die Unterstützung für Medienschlüsselereignisse hinzugefügt und pausiert.
  • Den Klassen BrowseFragment und DetailsFragment wurden Übergänge für die Eingabe und Rückgabe hinzugefügt.
  • Die Methode replace() zum Ersetzen von Elementen im Adapterarray eines Objekts wurde hinzugefügt.
Änderungen an der v7 Mediarouter-Bibliothek:
Änderungen an der recyclerview-Bibliothek der Version 7:

Version 21.0.3

Dezember 2014

Änderungen an der Supportbibliothek für Version 4:

Version 21.0.2

November 2014

Änderungen an der Supportbibliothek für Version 4:
Änderungen an der Appcompat-Bibliothek Version 7:
  • Der PopupMenu-Konstruktor wurde hinzugefügt, um neue Pop-up-Menüs zu unterstützen.
  • In der Klasse Toolbar wird jetzt eine Beschreibung des Symbols „Minimieren“ unterstützt.
  • Das SearchView-Widget wurde aktualisiert, um die Anzeige von commitIcon zu unterstützen.
  • Das Attribut buttonGravity wurde aus der Klasse Toolbar entfernt.
Änderungen an der CardView-Bibliothek für Version 7:
Änderungen an der recyclerview-Bibliothek der Version 7:
Änderungen für die Leanback-Bibliothek für Version 17:
  • Unterstützung zum Generieren von V4-Codefragmenten wurde hinzugefügt.
  • Die sekundäre Textfarbe für CardView wurde geändert.

Revision 21.0.1

November 2014

Es wurde eine Multidex-Supportbibliothek hinzugefügt, um mehrere Dalvik Executable-Dateien (DEX) für die Unterstützung von Multi-DEX-Dateien vor Android 5.0 zu unterstützen.

Version 21

Oktober 2014

Änderungen an der Supportbibliothek für Version 4:
  • Fragment-Übergänge werden für Geräte mit Android 5.0 (API-Level 21) unterstützt. Beachten Sie, dass Umstellungen keine Auswirkungen auf Geräte mit Android 4.4 und niedriger haben.
  • DocumentFile wurde hinzugefügt, um den Übergang von File bei der Arbeit mit Dokumentstrukturen zu erleichtern. Diese Klasse erfordert jedoch einen höheren Verarbeitungsaufwand als die DocumentsContract API der Plattform, die in Android 4.4 (API-Level 19) hinzugefügt wurde. Unter Android 4.4 und höher sollten Sie deshalb zu DocumentsContract wechseln.
Änderungen an der Appcompat-Bibliothek der Version 7:
  • Die Benutzeroberflächen für Material Design werden jetzt unterstützt.
  • Toolbar wurde hinzugefügt, das die Funktionalität von ActionBar zur Verwendung in App-Layouts verallgemeinert.
  • Aktualisierung von ActionBarDrawerToggle mit der Animation zum Menü-Pfeil
  • Aktualisierung gängiger Benutzeroberflächen-Widgets, um eine Tönung mithilfe von Designattributen auf Geräten zu ermöglichen, die älter als Android 5.0 sind
  • SwitchCompat wurde hinzugefügt, ein Backport des Switch-Widgets, das in Android 4.0 (API-Level 14) hinzugefügt wurde.
Neue CardView-Bibliothek für Version 7:
  • Das CardView-Widget wurde hinzugefügt, das eine mit Material Design kompatible Implementierung zur Anzeige von Datenelementen bietet.
Neue recyclerview-Bibliothek der Version 7:
  • Das RecyclerView-Widget wurde hinzugefügt, das eine flexible Listenansicht zur Bereitstellung eines begrenzten Fensters in einem großen Datensatz bietet.
Neue Vorlagenbibliothek für Version 7:
  • Die Klasse Palette wurde hinzugefügt, mit der Sie auffällige Farben aus einem Bild extrahieren können.
Neue Leanback-Bibliothek für Version 17:

Version 20

Juli 2014

Änderungen an der Supportbibliothek für Version 4:
  • In NotificationCompat.WearableExtender wurde eine erweiterte Unterstützung von Benachrichtigungen für Android Wear hinzugefügt, sodass du Wearable-spezifische Funktionen in deinen Benachrichtigungen angeben kannst.
  • NotificationCompat.Action.WearableExtender wurde hinzugefügt, um das Hinzufügen von Aktionen zu Wearable-Benachrichtigungen zu ermöglichen.
  • NotificationManagerCompat wurde hinzugefügt, damit du Benachrichtigungen senden kannst, die Wearable-Funktionen richtig unterstützen.
  • RemoteInput wurde hinzugefügt, damit ein Handheld-Gerät Spracheingaben über eine Benachrichtigung empfangen kann, die auf einem Wearable-Gerät angezeigt wird.
  • Der Umgang mit Touch-Feedback in SwipeRefreshLayout wurde verbessert.

Revision 19.1.0

März 2014

Änderungen an der Supportbibliothek für Version 4:
  • Die Klasse SwipeRefreshLayout wurde hinzugefügt, mit der Nutzer den Inhalt einer Ansicht mit einer vertikalen Wischgeste aktualisieren können.
  • Probleme mit der Barrierefreiheit bei Navigationsleisten wurden behoben.
Änderungen an der Appcompat-Bibliothek der Version 7:
  • Hintergrundprobleme mit der Aktionsleiste wurden behoben.

Revision 19.0.1

Dezember 2013

Änderungen an der Supportbibliothek für Version 4:
Änderungen an der v7-Mediarouter-Bibliothek:
Änderungen an der Renderscript-Bibliothek Version 8
  • Für die RenderScript-Tunking-Ebene wurde die Fehlerweitergabe hinzugefügt.

Version 19

Oktober 2013

Änderungen an der Supportbibliothek für Version 4:
Änderungen an der v7-Mediarouter-Bibliothek:
  • Wiedergabeliste bei der Medienwiedergabe wird jetzt unterstützt. Außerdem können HTTP-Header-Werte und die Dauer der Medienwiedergabe festgelegt werden.
  • Explizite Aktionen zum Starten, Abrufen und Beenden von Sitzungen zur expliziten Verwaltung von Medienwiedergabesitzungen mit dem Mediarouter hinzugefügt.

Version 18

Juli 2013

Änderungen an der Supportbibliothek für Version 4:
  • Benutzeroberfläche
    • BidiFormatter wurde für die Verarbeitung von Textstrings hinzugefügt, die von rechts nach links und von links nach rechts formatierten Text kombinieren.
    • ViewPager wurde geändert, um den Umgang mit Fällen zu verbessern, bei denen der Pager bei der anfänglichen Layoutverarbeitung eine gemessene Breite von null hat.
    • DrawerLayout und SlidingPaneLayout wurden geändert, damit während der Bearbeitung des Projektcodes keine Ausnahmen für Messungen ausgelöst werden.
  • Barrierefreiheit
  • Medien
    • Die Hilfsklasse TransportMediator wurde hinzugefügt, um die Medientransport wie z. B. Wiedergabe, Pause, Überspringen und andere Medienaktionen zu verwalten.
    • DisplayManagerCompat zur Verwaltung der Anzeigeausgabe auf einem oder mehreren Gerätebildschirmen wurde hinzugefügt.
  • Sonstige Änderungen
    • Die Hilfsklasse WakefulBroadcastReceiver wurde hinzugefügt, um ein gemeinsames Muster zu erkennen, mit dem ein Geräteaktivierungsereignis erkannt und die Arbeit an eine Service übergeben wird. Gleichzeitig wird sichergestellt, dass das Gerät nicht vor Abschluss der Übergabe in den Ruhemodus zurückkehrt.
    • Es wurden zwei neue APIs, commitContentChanged() und rollbackContentChanged(), zu AsyncTaskLoader hinzugefügt, um den Umgang mit Hintergrundaktualisierungen bei Datenänderungen zu erleichtern, die später abgebrochen werden.
Neue Appcompat-Bibliothek für Version 7:
  • ActionBar wurde hinzugefügt, um die Implementierung des Designmusters der Benutzeroberfläche für die Aktionsleiste in Android 2.1 (API-Level 7) und höher zu ermöglichen. Die Verwendung dieser Klasse erfordert, dass Sie Ihre Aktivität durch Erweitern der neuen Klasse ActionBarActivity implementieren.
Neue Mediarouter-Bibliothek für Version 7:

Es wurde eine neue Mediarouter-Bibliothek hinzugefügt, die die Google Cast-Entwicklervorschau unterstützt. Die v7 Mediarouter Library APIs ermöglichen die Steuerung des Routings von Medienkanälen und -streams vom aktuellen Gerät zu externen Bildschirmen, Lautsprechern und anderen Zielgeräten, wobei sie ab Android 2.1 (API-Level 7) kompatibel sind. Weitere Informationen finden Sie unter V7-Mediarouter-Bibliothek.

Die in Support Library r18 eingeführten Mediarouter-Bibliotheks-APIs der Version 7 können sich in späteren Versionen der Supportbibliothek ändern. Derzeit empfehlen wir, die Bibliothek nur in Verbindung mit der Google Cast-Entwicklervorschau zu verwenden.

Version 13

Mai 2013

Änderungen an der Supportbibliothek für Version 4:
Neue Rasterlayout-Bibliothek für Version 7:
  • GridLayout wurde hinzugefügt, um Unterstützung für das Layout-Objekt GridLayout bereitzustellen.
  • android.support.v7.widget.Space wurde hinzugefügt. Damit können leere Bereiche in einem GridLayout-Layoutobjekt erstellt werden.

Version 12

Februar 2013

Änderungen an der Supportbibliothek für Version 4:
  • Das Interaktionsverhalten für ViewPager wurde verbessert.
  • Es wurde ein Fehler behoben, der dazu führen konnte, dass ViewPager die falsche Seite auswählte.
  • Die Verwendung der Methode removeView() während des Layouts für ViewPager wurde korrigiert.
  • Ein Problem mit SearchViewCompat wurde behoben, bei dem durch das Schließen der Schaltfläche „Zurück“ der Suchtext nicht gelöscht wird. Diese Korrektur gilt nur für Host-API-Level 14 und höher.

Version 11

November 2012

Änderungen an der Supportbibliothek für Version 4:
  • Benutzeroberfläche
    • Unterstützung für verschachtelte Fragment-Klassen hinzugefügt.
    • Die Fehlerbehebung für FragmentManager wurde verbessert.
    • Es wurde ein Problem in FragmentTabHost behoben, bei dem Interaktionen zwischen Fragmenten und Tabs zum Verlust des ListView-Status führen konnten.
    • Ein Problem mit einem für den Nutzer sichtbaren Hinweis in FragmentStatePagerAdapter wurde behoben.
    • ViewPager wurde eine PageTransformer-Schnittstelle hinzugefügt, über die Anwendungen ein benutzerdefiniertes Übergangsverhalten für das Scrollen bereitstellen können.
    • Neue Funktionen und Fehlerbehebungen für TaskStackBuilder aus dem aktuellen Release hinzugefügt.
    • PagerTitleStrip wurde korrigiert, sodass die aktuell verwendete PagerAdapter korrekt erfasst wird.
    • Probleme mit Flimmern, Positionierung und Ausschneiden von Text auf dem Display mit PagerTitleStrip wurden behoben.
    • PagerTabStrip wurde so korrigiert, dass der Abstand beim Zeichnen einer Unterstreichung korrekt berücksichtigt wird.
  • Barrierefreiheit
  • Touch-Gesten mit GestureDetectorCompat werden jetzt unterstützt.
  • Unterstützung für das Ausführen atomarer Vorgänge an Dateien mit einer neuen AtomicFile-Klasse wurde hinzugefügt.
  • Unterstützung für alle make-Methoden in IntentCompat wurde hinzugefügt.
  • Die trimToSize()-Methode wurde der LruCache-Dienstprogrammklasse hinzugefügt.
  • ConnectivityManagerCompat wurde aktualisiert, um NetworkInfo von einer CONNECTIVITY_ACTION-Übertragung zu erhalten.

Version 10

August 2012

Änderungen an der Supportbibliothek für Version 4:
  • Benachrichtigungsfunktionen, die in Android 4.1 (API-Level 16) eingeführt wurden, werden zusätzlich zu NotificationCompat unterstützt.

Version 9

Juni 2012

Änderungen an der Supportbibliothek für Version 4:
  • Unterstützung für die Benutzeroberfläche
    • PagerTabStrip-Unterstützung hinzugefügt, wodurch erweiterte Funktionen über PagerTitleStrip hinaus zur Verfügung stehen.
    • Es wurden verschiedene Fehler für PagerTitleStrip und PagerTabStrip behoben, darunter die setAllCaps-Option, die Ausrichtung des Titels, Verbesserungen der Darstellung, Einschränkungen der Mindestbreite und Probleme bei der Touch-Navigation.
    • Seitenabstände vom Typ ViewPager werden jetzt unterstützt. Damit kann die Klasse ViewPager Seitenumbrüche für Inhalte mit einem großen horizontalen Scrollbereich bereitstellen, z. B. eine Karte.
    • Es wurden zahlreiche Fehler behoben, die bei ViewPager aufgetreten sind, darunter Probleme mit Änderungen an Größe und Datasets, Seitenpositionierung, Nutzerinteraktionen, Scroll-Tracking und Tastaturnavigationsprobleme.
    • Es wurden viele Fehler bei Fragment behoben, darunter die korrekte Handhabung von onActivityResult(), wenn das Zielfragment nicht mehr vorhanden ist, das Senden von Auswahlereignissen an unsichtbare Fragmente, ein verbessertes FragmentTransaction.replace()-Verhalten und eine bessere Statusbehandlung für Fragmente, die aus dem sichtbaren Bereich verschoben wurden.
    • Die Unterstützung für die Methode postOnAnimation() in ViewCompat wurde hinzugefügt.
    • NavUtils wurde aktualisiert, damit die Nach oben-Navigationsfunktion von Android 4.1 (API-Level 16) verwendet wird, sofern verfügbar.
  • Barrierefreiheit
    • Die Supportklassen für Bedienungshilfen, einschließlich AccessibilityNodeInfoCompat, wurden aktualisiert, um den in Android 4.1 (API-Level 16) vorgenommenen Fehlerkorrekturen zu entsprechen.
    • Unterstützung für Bedienungshilfen-Scrollaktionen in ViewPager hinzugefügt.
  • Allgemeine Verbesserungen

Version 8

April 2012

Änderungen an der Supportbibliothek für Version 4:
  • Intent-Flags für PendingIntent-Objekte wurden korrigiert, die von TaskStackBuilder generiert wurden.
  • Nicht verwendete Attribute wurden aus den Projekten der Rasterlayout-Bibliothek entfernt, damit die Bibliothek mit API-Level 7 und höher erstellt werden kann.
  • .classpath- und .project-Dateien für das Bibliotheksprojekt mit dem Rasterlayout wurden hinzugefügt.

Version 7

März 2012

Änderungen an der Supportbibliothek für Version 4:
  • ShareCompat wurde hinzugefügt und bietet Hilfsklassen zum Senden und Empfangen von Inhalten an Anwendungen für das Teilen in sozialen Netzwerken, einschließlich neuer Metadaten für die Zuordnung geteilter Daten zur Quell-App. Diese Klasse bietet außerdem eine kompatible Integration mit dem neuen ShareActionProvider in Android 4.0.
  • NavUtils und TaskStackBuilder wurden hinzugefügt, um die Implementierung der Android-Designrichtlinien für die Navigation zu unterstützen. Unter anderem kann die Schaltfläche Nach oben der Aktionsleiste in allen Versionen implementiert werden. Eine Beispielimplementierung dieses Musters finden Sie im AppNavigation-Beispiel in <em><sdk></em>/samples/<em><platform></em>/AppNavigation.
  • NotificationCompat.Builder wurde hinzugefügt, um eine Kompatibilitätsimplementierung der Notification.Builder-Hilfsklasse von Android 3.0 zum Erstellen standardisierter Systembenachrichtigungen bereitzustellen.

Version 6

Dezember 2011

Hinweis: Referenzen für Supportbibliotheks-APIs sind jetzt in den Framework-Referenzen verfügbar, z. B. android.support.v4.app.

Änderungen an der Supportbibliothek für Version 4:
  • Änderungen an ViewPager:
    • Zusätzliche Unterstützung dekorativer Ansicht für ViewPager hinzugefügt. Dekorative Ansichten können als untergeordnete Ansichten eines Pagers im XML-Layout bereitgestellt werden.
    • PagerAdapter.getPageTitle() wurde hinzugefügt, um Titelstrings für Seiten anzugeben, d. h. standardmäßig kein Titel für jede Seite.
    • PagerTitleStrip ist eine nicht interaktive Titelleiste, die als untergeordnetes Element von ViewPager hinzugefügt werden kann. Entwickler können Textdarstellung und -farbe sowie Informationen zu Layoutgröße und Schwerkraft angeben.
    • PagerAdapter-Methoden wurden aktualisiert, damit „ViewGroup“-Objekte anstelle von „View“ verwendet werden, um eine Klassenumwandlung in Adapterimplementierungen zu vermeiden.
    • ViewPager wurde aktualisiert, um das Schleuderverhalten im Launcher-Stil zu verwenden.
    • Fehlerkorrekturen in den Bereichen Interaktion mit der Benutzeroberfläche und Testautomatisierung.
  • Unterstützung von Fragmenten:
    • Methode setStartDeferred() in setUserVisibleHint(boolean) geändert.
    • Ein verzögerter Start für nicht sichtbare Seiten wurde hinzugefügt, um die Leistung zu verbessern.
  • Unterstützung für Accessibility APIs:
    • Die AccessibilityDelegateCompat-Methoden wurden aktualisiert, damit leere Listen anstelle von Nulllisten zurückgegeben werden.
    • Es wurden neue APIs hinzugefügt, die für die v4-Beispiele erforderlich sind.

Version 5

Dezember 2011

Änderungen an der Supportbibliothek für Version 4:

Version 4

Oktober 2011

Änderungen an der Supportbibliothek für Version 4:
  • EdgeEffectCompat wurde hinzugefügt, um EdgeEffect zu unterstützen.
  • LocalBroadcastManager wurde hinzugefügt, damit Anwendungen ganz einfach Intents innerhalb einer einzelnen Anwendung registrieren und empfangen können, ohne sie global zu übertragen.
  • In ViewCompat wird jetzt die Unterstützung für die Suche nach und Festlegen von Overscroll-Modi für Views unter Android 2.3 und höher hinzugefügt.
  • Änderungen an Fragment APIs:
    • Es wurden neue APIs hinzugefügt, um die Sichtbarkeit neuer Menüs zu steuern.
    • Benutzerdefinierte Animations-APIs wurden hinzugefügt.
    • In FragmentActivity wurden APIs hinzugefügt, um benutzerdefinierte Instanzdaten ohne Konfiguration beizubehalten.
    • Verschiedene Fehlerkorrekturen.
  • Es wurde ein Loader-Fehler behoben, der Probleme beim Abbrechen von AsyncTasks verursachte, wenn es auf Froyo und älteren Versionen der Plattform ausgeführt wurde. Der Supportcode verwendet jetzt eine eigene Version von AsyncTask, um das Verhalten auf allen Plattformversionen beizubehalten.

Version 3

Juli 2011

Änderungen an der Supportbibliothek für Version 4:
  • Unterstützt Fragment.SavedState
  • MotionEventCompat wird hinzugefügt, um neuere MotionEvent APIs zu unterstützen
  • VelocityTrackerCompat wird hinzugefügt, um neuere VelocityTracker APIs zu unterstützen
  • ViewConfigurationCompat wird hinzugefügt, um neuere ViewConfiguration APIs zu unterstützen
  • Alle neuen APIs (nur in der Supportbibliothek verfügbar), die es Ihnen ermöglichen, UIs mit horizontalem Paging zu erstellen, mit denen Nutzer nach links und rechts zwischen Inhaltsansichten wischen können. Dazu gehören:
    • ViewPager: Ein ViewGroup-Element, das das Layout für die untergeordneten Ansichten verwaltet, zwischen denen der Nutzer wischen kann.
    • PagerAdapter: Ein Adapter, über den das ViewPager mit den Ansichten gefüllt wird, die die einzelnen Seiten darstellen.
    • FragmentPagerAdapter: Eine Erweiterung von PagerAdapter zum Wechseln zwischen Fragmenten.
    • FragmentStatePagerAdapter: Eine Erweiterung von PagerAdapter zum Wechseln zwischen Fragmenten, die die Unterstützung der Bibliothek für Fragment.SavedState nutzt.
Neue Supportbibliothek für Version 13:
  • Enthält FragmentPagerAdapter und FragmentStatePagerAdapter, um horizontales Paging zu unterstützen.

    Sie sind dieselben wie die APIs, die der Supportbibliothek für Version 4 hinzugefügt wurden, basieren jedoch auf anderen Plattformkomponenten in Android 3.2. Verwenden Sie diese Bibliothek anstelle von Version 4, wenn Sie für Android 3.2 und höher entwickeln. Alle anderen APIs in der Bibliothek der Version 4 sind bereits mit API-Ebene 13 verfügbar.

Version 2

Mai 2011

Änderungen an Version 4-Bibliothek:

Version 1

März 2011

Erste Version mit der v4-Bibliothek.