Na tej stronie znajdziesz szczegółowe informacje o starszych wersjach pakietów Biblioteki pomocy. Dla: najnowsze wersje Biblioteki pomocy, patrz Najnowsze Obsługa wersji biblioteki.
Wersja 26.0.0 Beta 2
(Czerwiec 2017 r.)
Pamiętaj, że 26.0.0-beta2 to wersja przedpremierowa. Jego interfejs API to może ulec zmianie i nie musi zawierać funkcji ani poprawek błędów, z najnowszej stabilnej wersji Biblioteki pomocy.
Ważne: biblioteki pomocy są już dostępne w repozytorium Google Maven. Nie musisz pobierać pomocy z repozytorium pakietu SDK. Więcej informacji: Konfiguracja biblioteki pomocy.
Nowe interfejsy API
- Nowe zajęcia:
JobIntentService
, do pomocy deweloperzy planują zadania w sposób zgodny z nowym Androidem O, limitami wykonywania w tle.
Różnice między interfejsami API
Poprawki błędów
- Rezygnacja z pakietu SDK Android O powoduje utratę kursywy w elementach TextView
- Podczas łączenia się z usługą Media BrowserServiceCompat zerowy wyjątek wskaźnika
- TextInputLayout musi ustawiać wskazówki dotyczące onProvideAutofillStruktura()
- Przepełnienie stosu podczas korzystania z automatycznego rozmiaru TextView w O
Wersja 26.0.0 Beta 1
(maj 2017 r.)
Pamiętaj, że 26.0.0-beta1 to wersja przedpremierowa. Jego interfejs API to może ulec zmianie i nie musi zawierać funkcji ani poprawek błędów, z najnowszej stabilnej wersji Biblioteki pomocy.
Ważne: biblioteki pomocy są już dostępne w repozytorium Google Maven. Nie musisz pobierać pomocy z repozytorium pakietu SDK. Więcej informacji: Konfiguracja biblioteki pomocy.
Ważne zmiany
FragmentActivity.setSupportMediaController()
iFragmentActivity.getSupportMediaController()
zostały usunięte. Użyj nowych statycznych metodMediaControllerCompat.setMediaController()
iMediaControllerCompat.getMediaController()
.BottomNavigationView
dzwoni terazonNavigationItemReselected()
po wybraniu wcześniej wybranego elementu, zamiast dzwonićonNavigationItemSelected()
- Wszystkie instancje metody
findViewById()
zwracają teraz<T extends View> T
zamiastView
. Ta zmiana ma takie konsekwencje:- Może to spowodować, że istniejący kod będzie mieć niejednoznaczny typ zwrotu,
na przykład, jeśli jest zarówno
someMethod(View)
, jak isomeMethod(TextView)
, który przenosi wynik wywołania dofindViewById()
- Jeśli używany jest język źródłowy Java 8, wymaga to jawnego rzutu na
View
, gdy typ zwrotu nie jest ograniczony (na przykładassertNotNull(findViewById(...)).someViewMethod())
- Zastąpienia nieostatecznych metod
findViewById()
(dla (np.Activity.findViewById()
) będą potrzebować zwrotu Zaktualizowano typ.
- Może to spowodować, że istniejący kod będzie mieć niejednoznaczny typ zwrotu,
na przykład, jeśli jest zarówno
Nowe interfejsy API
-
FragmentManager
iFragment
mająisStateSaved()
, która pozwala na wysyłanie zapytań, czy transakcja będzie dozwolona bez utraty stanu. Jest to szczególnie przydatne aby sprawdzić, czy jest obsługiwane zdarzenieonClick()
przed wykonaniem transakcji. - Ruch po ścieżce jest obsługiwany w
AnimatedVectorDrawableCompat
. Ruch ścieżki umożliwia jednemu animatorowi obiektu zmianę dwóch właściwości jednocześnie czas na podstawie jednej ścieżki, ścieżka jest określona jakoandroid:pathData
w pliku XML animatora). - Na podstawie fizyki
animacja:
- Nowy obiekt
FlingAnimation
obsługujący animację za pomocą tagu wraz z prędkością początkową i płynnie zwalnia. - Podklasy klasy
DynamicAnimation
obsługują animowanie niestandardowe dla dowolnego obiektu. - Zarówno
SpringAnimation
, jak iFlingAnimation
mogą teraz animuj wartość zmiennoprzecinkową bez konieczności stosowania właściwościView
czyObject
.
Więcej informacji: Wiosenna animacja i animacja przesunięcia stron podglądu.
- Nowy obiekt
-
Czcionka
obsługa w formacie XML:
-
ResourcesCompat.getFont
umożliwia wczytanie czcionki zasobów (w tym kodu XML rodziny czcionek), które mogą być używane zTextView.setTypeface()
- W przypadku używania AppCompat obiekt TextView umożliwia określenie zasobu czcionki lub
z rodziny czcionek XML za pomocą atrybutu XML
android:fontFamily
. - Używaj rodziny czcionek XML do tworzenia rodzin czcionek o określonym stylu i grubości
odmian. (Jeśli korzystasz z klas pomocy, użyj do tego celu
Atrybuty
app:
orazandroid:
).
-
- Do pobrania
czcionki:
- Nowa funkcja
FontsContractCompat
, która umożliwia wysyłanie próśb o zgodę na używanie czcionek z dostawcy czcionek, zamiast grupować je w aplikacji. - Czcionki można też żądać w formacie XML i używać w układach.
- Nowa funkcja
-
Zgodność emotikonów
biblioteka:
-
EmojiCompat
może przetworzyć dane:CharSequence
i dodajEmojiSpans
. -
EmojiTextView
i inne widżety do wyświetlania emotikonów. -
FontRequestEmojiCompatConfig
, aby poprosić o czcionkę emotikonów z dostawcy czcionki.
-
-
Automatyczny rozmiar
TextView:
- Nowe metody w
TextViewCompat
oraz atrybuty XML aby sterować automatycznym rozmiarem wTextView
.
- Nowe metody w
- Sterowanie odtwarzaniem w funkcji Leanback z obsługą przewijania:
-
- Nowy komponent
PlaybackTransportRowPresenter
, który renderuje odtwarzanie za pomocą paska przewijania. - Nowa funkcja
PlaybackTransportControlGlue
, która współpracuje z funkcjąPlaybackTransportRowPresenter
i obsługuje przewijanie. - Nowa klasa bazowa
PlaybackSeekDataProvider
dla aplikacji udostępnienie miniatur przewijania do usługiPlaybackTransportControlGlue
.
- Nowy komponent
- Magazyn danych preferencji:
-
PreferenceDataStore
umożliwia teraz wdrażanie własnych pamięć ustawień, ustawiona z nowymi metodami w usłudzePreference
iPreferenceManager
.
-
Znane problemy
- Integracja czcionek i emotikonów do pobrania z Google Play Usługi działają tylko w Usługach Google Play w wersji 11 lub nowszej, które są obecnie dostępna w Google Play Program testów beta usług.
Poprawki błędów
-
Interfejs API
MediaBrowserCompat.search()
nie działa (problem z AOSP 262170) -
ViewCompat.postInvalidateOnAnimation()
zgłasza wyjątek (AOSP problem 80146) -
Funkcja
onActivityCreated()
wywołała fragmenty w zniszczonej aktywności -
RecyclerView.isComputingLayout()
powinien zwracać wartość „prawda” w trakcie pobieranie z wyprzedzeniem -
Gdy przejście
Fade
zostanie przerwane i cofnięte, makroView
rozpoczyna animację od początku. (Poprawka przeniesiona z Android Framework). -
Transition.Fade
ignoruje początkową wersję alfaView
(problem AOSP 221820)
Wersja 26.0.0 alfa 1
(Marzec 2017 r.)
Pamiętaj, że 26.0.0-alfa1 to wersja przedpremierowa. Jego interfejs API to może ulec zmianie i nie musi zawierać funkcji ani poprawek błędów, z najnowszej stabilnej wersji Biblioteki pomocy.
Ważne zmiany
Uwaga: minimalna wersja pakietu SDK została zwiększona do 14. W rezultacie wiele interfejsów API istniało wyłącznie dla interfejsów API < 14 została wycofana. Klienty tych interfejsów API powinny przejść na swoją platformę odpowiedniki podane na stronie referencyjnej każdego wycofanego interfejsu API.
- Moduł procentowej pomocy technicznej został wycofany. Klienci tego modułu należy przenieść do nowego widżetu ConstraintLayout, który jest udostępniany osobne artefakty w Menedżerze SDK.
- Moduł fragmentów pomocy nie jest już powiązany z modułem support-media-compat.
Nowe interfejsy API
Dodaliśmy wiele nowych klas, metod i stałych, aby zapewnić obsługuje wsteczną obsługę interfejsów API platformy dodanych w podglądzie O.
IME_FLAG_NO_PERSONALIZED_LEARNING
: edytory IME mogą nasłuchiwać "bez nauki" dla aplikacji z trybem prywatnym, np. przeglądarek. Ten pomaga edytorom IME określić, czy aplikacja jest w trybie prywatnym, mogą wyłączyć funkcje uczenia się lub adaptacji, gdy aplikacja i trybu uzyskiwania zgody.
Pełną listę zmian interfejsu API między 25.2.0 a 26.0.0-alfa1 znajdziesz w interfejs API biblioteki pomocy raportem o różnicach.
Poprawki błędów
- W niektórych przypadkach prosty
AutoTransition
animacje mogą zostać przerwane przez „przeskoki” widoku. (numer AOSP: 221816)
Wersja 25.4.0
(Czerwiec 2017 r.)
Ważne: biblioteki pomocy są już dostępne w repozytorium Google Maven. Nie musisz pobierać pomocy z repozytorium pakietu SDK. Więcej informacji: Konfiguracja biblioteki pomocy.
Ważne zmiany
-
executePendingTransactions()
,commitNow()
,popBackStackImmediate()
i podobne wywołania transakcji są niedozwolone podczas Zmiany stanu:FragmentManager
. Uczestnik wykonywanie transakcji jest niebezpieczne, aFragmentManager
teraz egzekwuje to w swoim stanie zmian. - Wraz z tą wersją biblioteki pomocy udostępniamy również
multidex,
wersji 1.0.2. W tej wersji wprowadzono następujące ważne zmiany:
- Zezwala na wielokrotne deksowanie pakietu APK instrumentacji.
- Wycofuje MultiDexTestRunner (należy użyć AndroidJUnitRunner ).
- Zapewnia lepszą ochronę przed nieprawidłowym wyodrębnianiem archiwum i zarządzanie aplikacją.
- Naprawiono błąd, który mógł powodować porzucone pliki tymczasowe.
- Umożliwia szybszą instalację podczas równoczesnego procesu.
- Naprawiono błąd instalacji w interfejsach API 19 i 20.
Nowe i zmodyfikowane interfejsy API
AnimatedVectorDrawableCompat
obsługuje przekształcanie ścieżek i interpolację ścieżek. Przekształcanie ścieżki
mogą zmieniać kształty z jednej ścieżki (określone jako
android:valueFrom
) do innej ścieżki (określonej jako
android:valueTo
), aby udostępnić złożone i atrakcyjne wizualnie elementy
efekty. Interpolacja ścieżki umożliwia określenie interpolatorów dla funkcji AnimatedVectorDrawableCompat
jako ścieżki (określone jako android:pathData
w funkcji
XML).
Różnice między interfejsami API
Rozwiązane problemy
- Podczas łączenia się z usługą Media BrowserServiceCompat zerowy wyjątek wskaźnika
- Interfejs API Media BrowserCompat.search() nie działa (problem AOSP 262170)
- Wywołania zwrotne UploadFragment onItemClicked nie działają w wersji 25.3.0
- NullPointerException podczas przewijania w górę i w dół w widoku VerticalGridView 25.3.1
- ClassCastException w SimpleTrackMap.allocArrays()
Wersja 25.3.1
(Marzec 2017 r.)
Rozwiązane problemy
SwitchCompat
wymaga minimalnego pakietu SDK wersji 14 lub nowszej. (numer AOSP: 251302)- Animacja oparta na fizyce (
updateListener
) pomija pierwszą klatkę. - Animacja etykiety
BottomNavigationView
jest uszkodzony.
Wersja 25.3.0
(Marzec 2017 r.)
Ważne zmiany
Metadane wersji Biblioteki pomocy zostaną automatycznie dodane do
AndroidManifest.xml
podczas tworzenia na podstawie Gradle, co upraszcza ten proces.
śledzenia wersji w kompilacjach publicznych. Na przykład:
<meta-data android:name="android.support.VERSION" android:value="25.3.0" />
Wycofania
Wiele metod i klas zostało wycofanych z tej wersji. Te wycofane interfejsy API zostaną usunięte w przyszłej wersji, a deweloperzy powinni Więcej informacji na temat migracji z konkretnego interfejsu API znajdziesz w jego dokumentacji.
ExifInterface
- Metoda logiczna
getLatLong(float[])
został wycofany. Zamiast tego używaj nowej metodygetLatLong()
, , który nie przyjmuje argumentów i zwracadouble[]
. mediacompat
- Metoda
PlaybackStateCompat.Builder.setErrorMessage(CharSequence)
została wycofana. Zamiast tego użyj nowej metodysetErrorMessage(int, CharSequence)
, który jest przekazywany z kodem błędu i opcjonalnym opisem. .
Interfejs EXTRA_SUGGESTION_KEYWORDS
został wycofany. Zamiast tego użyj Funkcja wyszukiwaniaMediaBrowserCompat
.v7.recyclerview
- Użytkownik
LinearLayoutManager.getInitialItemPrefetchCount()
został zmieniono nazwę naLinearLayoutManager.getInitialPrefetchItemCount()
. Poprzednia nazwa jest nadal obsługiwana, ale w przyszłej wersji zostanie usunięta.
Nowe i zmodyfikowane interfejsy API
appcompat-v7
- Nowa metoda
ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean)
upraszcza wyłączenie animacji ikony przełącznika szuflady nawigacji. customtabs
- Dodano obsługę kanałów wiadomości. Zobacz
CustomTabsService.requestPostMessageChannel()
orazCustomTabsService.postMessage()
. dynamic-animation
- Nowa biblioteka animacji oparta na fizyce, która udostępnia zestaw interfejsów API tworząc animacje, które dynamicznie reagują na dane wejściowe użytkownika.
leanback-v17
- Dodano obsługę tła z paralaksą. Zobacz
Parallax
. .
- Dodano
TimePicker
widżet wyboru godziny w interfejsie TV. mediacompat
- Dodano funkcję wyszukiwania. Zobacz
MediaBrowserCompat.search()
orazMediaBrowserServiceCompat.onSearch()
. .
- Dodano obsługę trybów losowania i powtarzania. Zobacz
MediaSessionCompat.setRepeatMode()
orazsetShuffleModeEnabled()
.
Rozwiązane problemy
StaggeredGridLayoutManager
rzucaIllegalArgumentException
(problem AOSP 230295)- Pobieranie z wyprzedzeniem (
RecyclerView
) nie obsługuje prawidłowo elementuRecyclerView
, który jest dołączony, ale nie wyświetla się na ekranie LinearLayout
nierozpoznany przez Robolectric- W przypadku zniszczenia elementu
Activity
parametronActivityCreated()
jest wywoływany w nieprawidłowy sposób dla jego fragmentów - Konstruktor
AppCompatImageView
powodujeArrayIndexOutOfBoundsException
- Niska wydajność interfejsu użytkownika w przypadku zmiany aktywności w usłudze
Call.Details
Wersja 25.2.0
(Luty 2017 r.)
Ważne zmiany
Rozwiązane problemy
- Ta wersja rozwiązuje poważny problem z mediarouterem, który polegał na używaniu interfejsu A2DP interfejsy API do routingu urządzeń i multimediów mogą spowodować, że urządzenie przestanie reagować wymagają ponownego uruchomienia urządzenia.
FragmentManager.FragmentLifecycleCallbacks
klasa jest teraz statyczna.
Rozwiązane problemy
- Wyświetlanie prezentacji ze slajdami z odbiciem lustrzanym ekranu powoduje, że urządzenie Zakończ połączenie z Wi-Fi
- Przycisk multimediów nie obsługuje poprawnie aplikacji multimedialnych, które nie zostały zarejestrowane
się z:
setMediaButtonReceiver()
-
Błąd
VectorDrawable
dotyczący zasobu ciągu tekstowego (problem AOSP 232407) TextInputLayout
podpowiedź i tekst, jeśli tekst jest ustawiony przez kod XML (problem AOSP 230171)- Wyciek pamięci w:
MediaControllerCompat
(problem AOSP 231441). -
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
ulegać awarii RecyclerView
awarii podczas recyklingu uchwyty wyświetlania (problem AOSP 225762)getAllowGeneratedReplies()
nieprawidłowo zwraca wartość fałsz dla działań wewnątrzWearableExtender
Wersja 25.1.1
(styczeń 2017 r.)
Ważne: w android.support.v7.media.MediaRouter
jest znany błąd
w wersjach 25.1.1 i 25.1.0 Biblioteki pomocy. Jeśli aplikacja używa
MediaRouter
v7,
musisz zaktualizować bibliotekę pomocy do wersji 25.2.0,
co naprawi błąd.
Ważne zmiany
-
Transakcje z fragmentami kodu można teraz optymalizować zarówno w obrębie domeny, jak i między nimi transakcji. Optymalizacja operacji na fragmentach transakcji może wyeliminować które mają zostać anulowane. Załóżmy na przykład, że dwie transakcje wykonywane razem: jeden z fragmentem A, a drugi – zastąpi fragment A fragmentem B. W tym przypadku pierwsza operacja można anulować i dodać tylko fragment B. Oznacza to, że fragment Może nie przejść przez cykl tworzenia/zniszczenia.
Efektem ubocznym tej optymalizacji jest to, że fragmenty mogą mieć stan odbiega od oczekiwanej kolejności. Załóżmy na przykład, że jedna transakcja dodaje fragment A, drugi fragment B, a trzeci fragment usuwa fragment Odpowiedź: Bez optymalizacji fragment B może oczekiwać, że w trakcie utworzony, fragment A będzie również istniał, ponieważ fragment A zostanie usunięty po dodaniu fragmentu B. Po optymalizacji fragment B nie może mieć pewności że fragment A będzie istnieć podczas tworzenia elementu B, ponieważ fragment A proces tworzenia i zniszczenia może zostać usunięty w wyniku optymalizacji.
Ta optymalizacja jest domyślnie wyłączona. Aby włączyć optymalizację: Zadzwoń pod numer
FragmentTransaction.setAllowOptimization(true)
. - Fragmenty mogą teraz opóźniać przejścia i animacje, dopóki
są gotowe do użycia:
Fragment.postponeEnterTransition()
iFragment.startPostponedEnterTransition()
. Ten interfejs API jest podobny do interfejsówActivity.postponeEnterTransition()
iActivity.startPostponedEnterTransition()
używanych z przenoszeniem aktywności.
Rozwiązane problemy
-
MediaSessionCompatTest
kończy się niepowodzeniem:IllegalArgumentException
-
Funkcja
DetailsFragment.installTitleView()
nie jest wywoływana w wersji 25.1.0 - Transakcja z fragmentem kodu powoduje, że przy zamykaniu wyświetlany jest widok ducha (problem AOSP 230679)
-
BottomNavigationView
wymaga odstępów między ikoną elementu a tekstem (Numer AOSP 230653) - Brak wybranych detektorów w nowych słuchawkach
PlaybackFragment
iPlaybackSupportFragment
-
Ostrość nie zmienia się w trybie
TextInputLayout
prawidłowo w emulatorze z biblioteki pomocy w wersji 25.1.0 (problem AOSP 230461). - Nie można zastąpić menu elementu
BottomNavigationView
(AOSP) numer 230343) -
RecyclerView
z:StaggeredGridLayoutManager
awarie z elementami o pełnym zakresie (problem AOSP 230295) - Awaria w czasie
MediaSessionCompat
, gdy przy użyciu:setCallback(null)
-
PlaybackGlueHostOld
iPlaybackSupportGlueHostOld
nie powiadamia o wywołaniach zwrotnych, gdy: zmiany w wierszu odtwarzania -
PlaybackOverlayFragment
przykład/test
nie może rozpocząć odtwarzania -
W
RecyclerViewFocusRecoveryTest
występuje błąd w interfejsie API 15 - „Zrzuty ekranu” wiersz jest zaznaczony na górze ekranu
-
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
awarie w interfejsie API 15 -
Usługa
setActions()
wonSubactionClicked()
nie działa -
RecyclerView
ulega awarii podczas recyklingu niektórych uchwytów ściennych
Wersja 25.1.0
(grudzień 2016 r.)
Ważne: w android.support.v7.media.MediaRouter
jest znany błąd
w wersjach 25.1.1 i 25.1.0 Biblioteki pomocy. Jeśli aplikacja używa
MediaRouter
v7,
musisz zaktualizować bibliotekę pomocy do wersji 25.2.0,
co naprawi błąd.
Ważne zmiany
- Klienty zagnieżdżonych widżetów
RecyclerView
(na przykład w przypadku przewijanej pionowo listy poziomych list) można uzyskać dzięki wskazówkomRecyclerView
wewnętrznym menedżerom układu widżetów, ile do przygotowania przed przewinięciem ekranu. Zadzwoń do nasLinearLayoutManager.setInitialPrefetchItemCount(N)
, gdzie N to liczba obejrzeń każdego elementu wewnętrznego. Przykład: jeśli wewnętrzne, poziome listy pokazują co najmniej 3,5 wyświetleń elementu można zwiększyć skuteczność reklam,LinearLayoutManager.setInitialPrefetchItemCount(4)
Robię to umożliwia usłudzeRecyclerView
tworzenie wszystkich wyświetleń odpowiednio wcześnie, podczas gdy zewnętrznaRecyclerView
to przewijanie, co znacznie ogranicza liczbę zacinań przewija całą stronę. FragmentActivity.setSupportMediaController()
iFragmentActivity.getSupportMediaController()
zostały wycofane. Użyj nowych statycznychMediaControllerCompat.setMediaController()
iMediaControllerCompat.getMediaController()
. .- Gdy klient określi odcień widżetu za pomocą odcieniania kompatybilności aplikacji (na przykład
appcompat:buttonTint
), klient jest odpowiedzialny za dostarczenie wszystkie niezbędne stany (np. „wyłączony”, „naciśnięty” itd.). To jest zgodne z określaniem odcieni widżetów podczas korzystania z funkcji zabarwienia platformy.
Nowe i zmodyfikowane interfejsy API
- Dodano obsługę ExifInterface Biblioteka. Ta biblioteka wyodrębnia obsługę odczytu informacji Exif z JPEG i formatu nieprzetworzonego plików i ustawienia informacji Exif dla plików graficznych JPEG.
- Element
Snackbar
został zmodyfikowany na pozwalają aplikacjom na wyświetlanie niestandardowych treści.BaseTransientBottomBar
to nowa klasa bazowa, która ujawnia ogólne działanie przesuwania i animacji. - Dodaliśmy nowy pakiet leanback.media, który zawiera klasy pomocnicze do integracji odtwarzaczy z aplikacjami na Androida TV.
- Dodano:
SeekBarPreference
z dostosowywanym układem i atrybutami wersja 7 z biblioteką pomocy. - Dodano:
ArraySet
do biblioteki pomocy wersji 4. Ta klasa odpowiada platformie KlasaArraySet
, która została wprowadzona w interfejsie API poziomu 23. RecyclerView
element RecyclerView ulepszenia funkcji pobierania z wyprzedzeniem:- Zagnieżdżone pobieranie z wyprzedzeniem
RecyclerView
umożliwia wstępne pobieranie treści zRecyclerView
w obrębie innego przewijanegoRecyclerView
, z interfejsem API pobieranie z wyprzedzeniem odbywa się: - Dodano interfejsy API do niestandardowego
LayoutManager
obiekty, które należy zaimplementować, aby umożliwić wstępne pobieranie podczas przewijania i przesuwania stron. - Ulepszenia pobierania z wyprzedzeniem pozwalające wykonywać tylko tyle zadań związanych z tworzeniem i wiązywaniem, w czasie między klatkami
- Zagnieżdżone pobieranie z wyprzedzeniem
Rozwiązane problemy
- Przełącznik widoczności hasła nie przejdzie testów ułatwień dostępu.
- Aplikacja Appcompat nie respektuje
state_enabled
na urządzeniach w wersji wcześniejszej niż L. - Dodano mechanizm przywracania fokusu do aplikacji
RecyclerView
. To także stałe ustawienie obsługi fragmenty nie są wyświetlane podczas korzystania z nawigacji przy użyciu pada kierunkowego, np. w Androidzie TV. urządzenia. - Leanback: awarie ExploreFragment z wyłączonymi nagłówkami i pustym adapterem.
- Zgodność z aplikacjami:
AlertDialog
jest za szeroki. InputContentInfoCompat
połączeniarequestPermission()
, gdy powinno wywołać funkcjęreleasePermission()
.MediaBrowserCompat
awarii.- CoordinatorLayout mierzy/układa widoki, gdy widoczność jest ustawiona na
GONE
- Nie udało się zastosować odcienia
AnimatedVectorDrawableCompat
na poziomie interfejsu API poniżej 24 - Biblioteka Leanback aktywuje fałszywe błędy lintowania
- Biblioteka palet spowodowała błędy testów na każdym poziomie interfejsu API
RecyclerView
nieudane testy funkcji LeanbackRecyclerView
awarii podczas recyklingu uchwyty wyświetlania (problem AOSP 225762)Fragment.onDestroy()
nie jest wymagane dla fragmentu w stosie wstecznym- Scrim
CollapsingToolbarLayout
to nierysowana po zwinięciu CoordinatorLayout.offsetChildByInset()
rzutuIllegalArgumentException
- Odłączanie
RecyclerView
elementów wewnętrzneRecyclerView
, zapobiegaj przyszłości pobierania z wyprzedzeniem - Nie można dodać
RecyclerView
załączonych elementów wstępnie pobrane zagnieżdżone - Pobieraj z wyprzedzeniem dane dla zagnieżdżonych typów
RecyclerView
Elementy odrzucone podczas pierwszego układu - Pobieranie z wyprzedzeniem (
RecyclerView
) kończy się niepowodzeniem, jeśli 2 przeciągnięcia zdarzenia pojawiają się na tej samej pozycji RecyclerView
powinna spekulować układ podczas renderowania przez RenderThread- Zasoby kolorów skonfigurowane w nocy przekonwertowane na obiekty rysowalne nie zawsze są prawidłowo usunięte z pamięci podręcznej zasobów
FloatingActionButton
: Programowe ustawianie elementu BackgroundTintList nie działa prawidłowo (AOSP numer 227428)TextInputLayout
: krój pisma to nie Ustawianie dla ErrorView (problem AOSP 227803)TextInputLayout
zawsze cofa się podświetlenie koloru błędu poniżej API 23 (problem AOSP 221992)FloatingActionButton
wyświetla się jako naciśnięty, gdy wskaźnik odchodzi
Pełna lista publicznych poprawek błędów jest dostępna w AOSP Issue Tracker.
Wycofania
Wiele metod i klas zostało wycofanych z tej wersji. Te wycofane interfejsy API zostaną usunięte w przyszłej wersji, a deweloperzy powinni Więcej informacji na temat migracji z danego interfejsu API znajdziesz w jego dokumentacji.
-
android.support.design.widget
-
android.support.v17.leanback.app
BackgroundManager.getDefaultDimLayer()
BackgroundManager.getDimLayer()
BackgroundManager.setDimLayer()
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[])
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.getFragment()
PlaybackControlGlue.getOnItemViewClickedListener()
PlaybackControlGlue.onRowChanged()
PlaybackControlGlue.pausePlayback()
PlaybackControlGlue.skipToNext()
PlaybackControlGlue.skipToPrevious()
PlaybackControlGlue.startPlayback()
PlaybackControlSupportGlue
PlaybackOverlayFragment
PlaybackOverlaySupportFragment
-
android.support.v17.leanback.widget
-
android.support.v4.app
FragmentActivity.getSupportMediaController()
FragmentActivity.setSupportMediaController()
Wersja 25.0.1
(listopad 2016 r.)
Rozwiązane problemy
- Przełącznik hasła
TextInputLayout
jest teraz domyślnie wyłączony, aby uniknąć niepotrzebnego zastępowania określone przez dewelopera końcowe obiekty rysowane. Można ją włączyć ręcznie w Atrybut XMLpasswordToggleEnabled
. BottomNavigationView
elementów jest teraz dostępnych jeden wiersz, aby dopasować go do specyfikacji Material.RecyclerView
awarie podczas pobierania z wyprzedzeniem, jeśli menedżer układu ma wartość null.BottomNavigationView
– wysokość: ustawiony prawidłowo. (numer AOSP 226182)- Awaria
BottomNavigationView
podczas automatyczne dodawanie pozycji menu. (numer AOSP 225731) - Popraw w poziomie
TextInputLayout
w lewo i w prawo elementy rysowalne. (numer AOSP 225836) RecyclerView
awarii podczas recyklingu widoku danych. (numer AOSP 225762)- Leanback: TalkBack często wypowiada słowo „null” na podzielonym ekranie.
RecyclerView
: problemy z renderowaniem w Android Studio. (numer AOSP 225753)BottomNavigationView
– nadal wyświetla się elementu menu wybranego poonNavigationItemSelected()
zwracaniu wartości false (fałsz). (numer AOSP 225898)- ForwardListener wysyła żądanie
NoSuchMethodError
. (AOSP) numer 225647) TextInputEditText
się nie wyświetla i wskazówki w trybie wyodrębniania IME. (numer AOSP 221880)
Pełna lista publicznych poprawek błędów jest dostępna w AOSP Issue Tracker.
Wersja 25.0.0
(październik 2016 r.)
Ważne zmiany
- Dotychczasowy konstruktor
ContextCompat
i chronimy. Ta klasa nie powinna być utworzona publicznie, ale może być rozszerzone o biblioteki pomocy kierowane na nowsze poziomy interfejsów API. - Utworzono konstruktor
ActivityCompat
i chronione. Ta klasa nie powinna być utworzona publicznie, ale może być rozszerzone o biblioteki pomocy kierowane na nowsze poziomy interfejsów API. - Dokonano:
getReferrer(Activity)
statyczny. -
android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V)
został(a) usunięty(a). Wszelkie implementacje tej metody u klientów powinny zostać usunięte. -
android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object)
został(a) usunięty(a). Użycie powinno być zastąpione wartością większą metoda o odpowiedniej nazwiefromMediaSession()
-
android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object)
został usunięty. Użycie powinno być zastąpione bardziej adekwatnym metoda z nazwąMediaSessionCompat.QueueItem#fromQueueItem
-
android.support.v7.widget.Space
został(a) usunięty(a). Zastosowania należy zastąpić kodemandroid.support.v4.widget.Space
.
Nowe interfejsy API
-
android.support.design.widget.BottomNavigationView
zajęcia implementuje metodę u dołu nawigacji ze specyfikacji Material Design. - Nowy pakiet
android.support.v13.view.inputmethod
zawiera zajęcia za dostęp do funkcjiandroid.view.inputmethod.InputConnection
wprowadzonych po interfejsie API poziom 13. -
android.v7.widget.RecyclerView.DividerItemDecoration
zajęcia stanowi podstawową implementację separatorów pionowych lub poziomych między elementy(ów). - Nowe style dekoracji w:
android.support.v7.app.NotificationCompat
,DecoratedCustomViewStyle
iDecoratedMediaCustomViewStyle
, powiela zajęcia dodane w API 24 platformy.
Rozwiązane problemy
Pełna lista publicznych poprawek błędów jest dostępna w AOSP Issue Tracker.
Wersja 24.2.1
Wrzesień 2016 r.
Rozwiązane problemy:
FloatingActionButton
nie może już być zakotwiczone do pośrednich elementów podrzędnych taguCoordinatorLayout
. (numer AOSP 220250)- Obraz w środku
CollapsingToolbarLayout
nie jest prawidłowo skalowany dziękifitsSystemWindows=true
. (numer AOSP 220389) - Po wyświetleniu i zamknięciu
Snackbar
CoordinatorLayout
wysyła żądanieIndexOutOfBoundsException
. (Problem z usługą AOSP 220762); - Nie można rozpoznać:
TextInputLayout
kolor tekstu błędu. (numer AOSP 220305) BatchedCallback.onMoved()
dzwoni pod numerBatchedCallback.onInserted()
. (numer AOSP 220309)TextInputLayout
zastępuje wartość z prawej obiekt rysowalny złożony. (numer AOSP 220728)
Pełna lista publicznych poprawek błędów jest dostępna w AOSP Issue Tracker.
Wersja 24.2.0
sierpniu 2016 r.
Wersja 24.2.0 zawiera te zmiany:
- Podział Biblioteki pomocy technicznej (wersja 4)
- Aktualizacje interfejsów API
- Zmiany w działaniu
- Wycofania
- Poprawki błędów.
Uwaga: wersja 24.2.0 nie obsługuje już Android 2.2 (poziom interfejsu API 8) lub niższy. Klasy i metody, które istnieją tylko dla dla tych wersji systemu są teraz oznaczone jako wycofane i nie powinny już być i sposobu ich wykorzystania. Te wycofane klasy i metody mogą zostać w przyszłości usunięte wersji.
Podział biblioteki pomocy (wersja 4)
W tej wersji biblioteka pomocy dla wersji 4 zawiera została podzielona na kilka mniejszych modułów:
-
support-compat
-
Udostępnia kody zgodności nowych interfejsów API platformy, takich jak
Context.getDrawable()
iView.performAccessibilityAction()
-
support-core-utils
-
Udostępnia wiele klas narzędzi, takich jak
AsyncTaskLoader
iPermissionChecker
. -
support-core-ui
-
Implementuje różne komponenty związane z interfejsem, takie jak
ViewPager
,NestedScrollView
iExploreByTouchHelper
. -
support-media-compat
-
elementy bazowe platformy media,
w tym
MediaBrowser
iMediaSession
. -
support-fragment
-
Dodaje fragment
platformy. Ten moduł wymaga zależności od:
support-compat
,support-core-utils
,support-core-ui
isupport-media-compat
Aby uzyskać zgodność wsteczną, jeśli w parametrze support-v4
skrypt Gradle, Twój plik APK będzie zawierał wszystkie te moduły. Jednak aby zmniejszyć
Rozmiar pliku APK, zalecamy sporządzenie po prostu listy modułów, których potrzebuje aplikacja.
Aktualizacje interfejsu API
- Klienci korzystający z kart niestandardowych mogą
kontrolować otwieranie aplikacji błyskawicznych. (Pamiętaj, że aplikacje błyskawiczne nie są jeszcze
ogólnie dostępne). Aby włączyć lub wyłączyć aplikacje błyskawiczne, zadzwoń pod numer
CustomTabsIntent.Builder.setInstantAppsEnabled()
lub podajEXTRA_ENABLE_INSTANT_APPS
Domyślnie karty niestandardowe będą domyślnie włącz aplikacje błyskawiczne, gdy ta funkcja stanie się dostępna. TextInputLayout
obsługuje: przełącznik widoczności hasła ze specyfikacji Material Design.- Nowa funkcja
android.support.transition
pakiet przenosi platformę Migrates do poziomu interfejsu API 14. i wyższe. Więcej informacji znajdziesz w dokumentacjiandroid.support.transition
. - bibliotekę obsługi kart niestandardowych,
dodano obsługę używania
RemoteViews
w dodatkowej na pasku narzędzi. IstniejącysetToolbarItem()
została wycofana. AppCompatResources
dodaje: możliwość wczytania interfejsu<vector>
(na poziomie API 9 lub wyższym) lub<animated-vector>
(na poziomie interfejsu API 11 lub wyższym) z identyfikatora zasobu w nowej metodziegetDrawable()
.CoordinatorLayout
obsługuje teraz definiowanie widoków wstawionych i określać, że inne widoki mają omijać wyświetleń. Dzięki temu aplikacje mogą powielać wzorce zachowań w podobny sposób.FloatingActionButton
kończy ruch zSnackbar
, ale w przypadku dla dowolnego typu dzieci. Więcej informacji można znaleźć wLayoutParams.insetEdge
iLayoutParams.dodgeInsetEdges
.- Nowa klasa
DiffUtil
może obliczać różnicę między dwiema wartościami kolekcji i wysyłać listę odpowiednich operacji aktualizacji , które zostanie zużyte przezRecyclerView.Adapter
. -
Sieć
RecyclerView.OnFlingListener
została dodana, aby obsługiwać niestandardowe w reakcji na poloty.SnapHelper
klasy zapewnia implementację specjalnie do przyciągania widoków podrzędnych.LinearSnapHelper
rozszerza tę implementację, aby zapewnić przyciąganie wyśrodkowane zachowanie podobne doViewPager
. - Biblioteka kart niestandardowych pozwala teraz klientom wysyłać żądania dotyczące standardowych kart
interfejsu przeglądarki zamiast niestandardowych kart, przez wywołanie
CustomTabsIntent.setAlwaysUseBrowserUI()
Działanie to przydatne, gdy przeglądarka domyślnie korzysta z interfejsu kart niestandardowych, ale użytkownik wyraził swoje preferencje dla standardowego interfejsu przeglądarki.
Zmiany w działaniu
- Jeśli korzystasz z funkcji Dzień/Noc biblioteki Appcompat, system
Teraz automatycznie odtwarza Twoją aktywność po każdej zmianie trybu dziennego/nocnego
(z powodu pory dnia lub połączenia z numerem
AppCompatDelegate.setLocalNightMode()
). Snackbar
rysuje teraz za pasek nawigacyjny, jeśli pasek stanu jest półprzezroczysty.
Biblioteka MediaRouter
Urządzenia Bluetooth nie są już wymienione jako trasy multimediów. Kieruję dźwięk na: Urządzeniami Bluetooth steruje się teraz wyłącznie na poziomie systemu Android.
Wycofania
Wycofane klasy i metody mogą zostać usunięte w przyszłej wersji. Musisz jak najszybciej zrezygnować z tych interfejsów API.
- Kilka metod z poniższych klas było wymaganych tylko w przypadku API 8 i
niższy i nie powinien być już używany. Zamiast tego użyj platformy,
implementacji.
android.support.v4.view.KeyEventCompat
: zastąp tekstemKeyEvent
android.support.v4.view.MotionEventCompat
: użyjMotionEvent
android.support.v4.view.ViewCompat
: użyjView
android.support.v4.view.ViewConfigurationCompat
: użyjViewConfiguration
-
AccessibilityServiceInfoCompat.getDescription()
została wycofana na rzeczAccessibilityServiceInfoCompat.loadDescription()
, , który wyświetla poprawnie zlokalizowany opis. - Nie twórz instancji klasy
ActivityCompat
bezpośrednio. Niestatyczna metodagetReferrer(Activity)
będzie stały się statyczne w kolejnej wersji. - Usługa
CoordinatorLayout.Behavior.isDirty()
została wycofana i nie jest już używana Wywołał(a)CoordinatorLayout
. Dowolne należy usunąć wszystkie implementacje i wywołania tej metody. - Interfejs
MediaSessionCompat.obtain()
został wycofany i zastąpiony używając bardziej odpowiedniej metodyfromMediaSession()
- Ciąg
MediaSessionCompat.QueueItem.obtain()
został wycofany i zastąpiony przez tym bardziej precyzyjnie nazwana jest metoda,fromQueueItem()
- Kilka klas abstrakcyjnych zostało wycofanych i zastąpionych przez
które lepiej odzwierciedlają ich odpowiedniki w ramach platformy.
AccessibilityStateChangeListenerCompat
została zastąpiona przezAccessibilityManagerCompat.AccessibilityStateChangeListener
za pomocą prostego interfejsu online.OnCloseListenerCompat
ma zastąpiliśmy interfejsemSearchViewCompat.OnCloseListener
.OnQueryTextListenerCompat
została zastąpiona przezSearchViewCompat.OnQueryTextListener
za pomocą prostego interfejsu online.
- Interfejs
CustomTabsSession.setToolbarItem()
został wycofany i zastąpiony przez Oparta na zdalnym widoku danychsetSecondaryToolbarViews()
.
Poprawki błędów
W wersji 24.2.0 poprawiliśmy te znane problemy:
- Sprawdź, czy podczas wyświetlania wskaźnika
SwipeRefreshLayout
wyświetlany jest wskaźnik PolesetRefreshing(true)
jest wywoływane przed pierwszym zaliczonym pomiarem (AOSP problem 77712) - Zapobiegaj migotaniu podczas zmiany stron w
TabLayout
(AOSP) problem 180454) - Unikaj:
ClassNotFoundException
podczas usuwania z serwisuSavedState
na poziomie API 11 lub niższym (problem z AOSP 196430)
Pełna lista publicznych poprawek błędów jest dostępna w AOSP Issue Tracker.
Wersja 24.1.1
Lipiec 2016 roku
Rozwiązane problemy:
- Rozwiązaliśmy problem w wersji 24.1.0, który miał wpływ na identyfikatory zasobów udostępniane między bibliotekami pomocy. Ten problem spowodował aplikacje, które zależą od obsługiwać biblioteki z zasobami (takimi jak projekt i kompatybilne z aplikacją) na problemy spowodowane niezgodnością identyfikatorów zasobów.
Wersja 24.1.0
Lipiec 2016 roku
- Zmiany dotyczące obsługi wersji 4 Biblioteka:
-
NotificationCompat.Action.WearableExtender
ma nowych użytkownikówgetHintDisplayActionInline()
isetHintDisplayActionInline()
metody na zapewnienie zgodności z Android Wear 2.0 – wersja testowa. Te metody pozwalają aplikacji określić, że działanie powinno być wyświetlane w tekście powiadomienia.- Wywołanie funkcji
Fragment.setUserVisbileHint()
nie spowoduje już przekształcenia fragmentu started (rozpoczęta), jeśli wskazówka została dodana do elementuFragmentTransaction
, który nie jest jeszcze zatwierdzony. Ten dotyczy użytkowników aplikacjiFragmentPagerAdapter
, którzy zastąpsetUserVisbileHint()
i przyjmujesz określony stan cyklu życia fragmentu po wywołaniu numerusuper.setUserVisibleHint()
. Aby dowiedzieć się więcej, zobacz stronę z dokumentacją dotyczącąFragment.setUserVisbileHint()
.
Rozwiązane problemy:
- TabLayout.setCustomView(null) daje wynik NullPointerException (AOSP numer 214753)
- Układ karty nieprawidłowo wyróżnia karty niestandardowe (problem AOSP 214316)
- AppCompatTextHelper używa nieprawidłowo posortowanej tablicy atrybutów (problem 214366)
- Nie można odwoływać się do obiektu VectorDrawable w pliku XML kontenera XML, gdy używany jest obiekt custom ContextWrapper (problem AOSP 214055)
- ViewDragHelper.saveLastMotion() zgłasza wyjątek ArrayIndexOutOfBoundsException (AOSP numer 212945)
- Metoda bottomSheetBehavior rozwija się do starej wysokości podczas używania setState(STATE_EXPANDED) (problem AOSP 213660).
- CollapsingToolbarLayout nie obsługuje elementów podrzędnych, które można przypiąć, dolne marginesy (problem z AOSP) 213001).
- Tytuł przeglądania w funkcji Leanback nie obsługuje wyrównania RTL (problem z AOSP 213461).
- Pasek PagerTabStrip znika z powodu braku dziedziczonej adnotacji (problem z usługą AOSP 213359).
- Powiązanie danych zgłasza wyjątek NullPointerException, jeśli do ustawienia użyjesz wartości logicznej. flagi warunkowe (problem z AOSP) 191841).
- CoordinatorLayout nie odpowiada na funkcję setFitsSystemWindows() (problem z systemem AOSP 212720).
- Sposób działania na dole strony ulega awarii podczas ustawiania stanu początkowego (problem z AOSP 203114).
- ViewPager pomija strony, jeśli indeks ma dużą wartość (problem z usługą AOSP 211734).
- lowerSheetBehavior nie działa w przypadku układów dynamicznych (problem z AOSP) 205226).
Wersja 24.0.0
Czerwiec 2016
- Zmiany dotyczące obsługi wersji 4 Biblioteka:
-
- Dodano
Fragment.commitNow()
dla zatwierdzenia synchronicznego - Dodano
NotificationCompat.MessagingStyle
w przypadku rozmów z wieloma osobami - Dodano
NotificationManagerCompat.areNotificationsEnabled()
igetImportance()
MediaSessionCompat
teraz odzwierciedla funkcje interfejsuMediaSession
i nie wywołuje już automatycznie funkcjisetMediaButtonReceiver()
Uwaga: tylko
MediaBrowserServiceCompat
w wersji 24.0.0 jest zgodne z przyszłymi wersjami Androida wykraczającymi poza interfejs API 24. Jeśli używasz poprzednich wersji, zaktualizuj je do zapewnić ich zgodność. - Dodano
- Zmiany w wersji 7 biblioteka appcompat:
-
- Dodano obsługę odwoływania się do tematycznych obiektów
ColorStateList
z pliku XML
- Dodano obsługę odwoływania się do tematycznych obiektów
- Zmiany w pomocy przy projektowaniu Biblioteka:
-
- Ulepszenia wersji
AppBarLayout
obsługa wzniesień za pomocąStateListAnimator
- Ulepszenia wersji
- Zmiany w bibliotece Leanback v17:
-
- Dodano
OnboardingFragment
w celu powitania przy pierwszym uruchomieniu i proces konfiguracji
- Dodano
- Zmiany dotyczące kart niestandardowych:
-
- Dodano obsługę podawania atrybutu
RemoteViews
hierarchia dodatkowego paska narzędzi - Dodano
CustomTabsClient.connectAndInitialize()
na jednowierszową rozgrzewkę
- Dodano obsługę podawania atrybutu
Wersja 23.4.0
Maj 2016 roku
- Zmiany dotyczące obsługi wersji 4 Biblioteka:
-
- Rozwiązaliśmy problem polegający na tym, że fragmenty były dodawane w niewłaściwej kolejności. (Problem 206901).
- Rozwiązanie problemu polegającego na tym, że po przewinięciu strony pasek aplikacji nie był rysowany. (Problem 178037).
- Zmiany w wersji 7 biblioteka appcompat:
-
- Dodane
AppCompatDelegate.setCompatVectorFromResourcesEnabled()
metoda ponownego włączenia użycia wektorowych obiektów rysowalnych w obiektachDrawableContainer
na urządzeniach z Androidem 4.4 (poziom interfejsu API 19) lub starszym. Zobacz AppCompat w wersji 23.2 — Wiek wektorów, aby dowiedzieć się więcej. znajdziesz więcej informacji. - Naprawiono błąd interfejsu API w wersji 23: .
Nie:
AppCompatDelegate.setDefaultNightMode()
wczytuję odpowiednie zasoby na poziomie API 23. (Problem 206573). - Rozwiązaliśmy problem, który mógł spowodować
NullPointerException
. (Problem 207638).
- Dodane
- Zmiany w pomocy przy projektowaniu Biblioteka:
-
- Rozwiązaliśmy problem, który powodował, że usługa
TextInputLayout
nie usuwała błędu odcień posetErrorEnabled(false)
na poziomie API 21–22 (problem 202829) - Rozwiązaliśmy problem, który powodował, że funkcja
FloatingActionButton
nie zwracała wartości gdy animacje są wyłączone. (Problem 206416). - Usunięto problem w aplikacji
AppBarLayout
przyciągania w przypadku użycia z flagami przewijania
. (Problem 207398).scroll
|enterAlways
|enterAlwaysCollapsed
|snap
- Rozwiązaliśmy problem, który powodował, że usługa
- Zmiany w bibliotece rysowalnej wektorowej:
-
- Naprawiono błąd, który powodował, że aplikacja
VectorDrawableCompat
nie działa nie wyrenderuj poprawnie wTextView
na poziomie API 23. (Problem 206227).
- Naprawiono błąd, który powodował, że aplikacja
Wersja 23.3.0
w kwietniu , 2016
- Zmiany dotyczące obsługi wersji 4 Biblioteka:
-
- Dodano
AppLaunchChecker
, aby pomóc w śledzeniu działania aplikacji została w przeszłości uruchomiona przez użytkownika.hasStartedFromLauncher()
informuje, czy użytkownik uruchomiła aplikację wcześniej na ekranie głównym lub tylko rozpoczęte w inny sposób (np. w celu wyświetlenia określonej witryny adresy URL). - Naprawiono wyciek pamięci w
MediaBrowserServiceCompat.mConnections
(Problem 205220). - Rozwiązaliśmy problem, który powodował, że
ViewPager
nie uwzględnia marginesów strony podczas przewracania strony. (Problem 203816). - Aplikacja
Fragment.onRequestPermissionsResult()
jest teraz dostarczana do dziecka fragmenty.
- Dodano
- Zmiany w wersji 7 biblioteka appcompat:
-
- Rozwiązaliśmy problem w aplikacji
AppCompatSpinner
, który mógł powodować kilka wyskakujących okienek. (Problem 205052) - Naprawiono problem z kolorem przycisków bez obramowania. (Problem 202967)
- Usunięto problem ze zgodnością między
AppCompatDialogFragment
aAlertDialog
. (Problem 204805). - Cofnięto zmiany w zakresie
TintResources
, które spowodowały z pamięcią i konfiguracją. (Problem 205236).
- Rozwiązaliśmy problem w aplikacji
- Zmiany w wersji 7 biblioteka mediarouter:
-
- Naprawiony
MediaRouteControllerDialog
zachowanie suwaka głośności. (Problem 202299)
- Naprawiony
- Zmiany preferencji dotyczących wersji 7 biblioteka:
-
- Rozwiązaliśmy problem, który powodował awarię aplikacji
PreferenceFragmentCompat
jeśli określonodividerHeight
. (Problem 204778).
- Rozwiązaliśmy problem, który powodował awarię aplikacji
- Zmiany w wersji 7 biblioteka recyclerview:
-
- Naprawiono błąd, przez który
RecyclerView
nie wywoływał przewijania. wywołania zwrotne, jeśli zakres widocznych elementów zmalał. (Problem 200987) - Naprawiono błąd polegający na tym, że aplikacja
RecyclerView
zawieszała się, jeśli była w był ważony i zawierał obrazy. (Problem 203276). - Naprawiono awarię w:
OrientationHelper.getStartAfterPadding()
. (Problem 180521). - Naprawiono awarię przy użyciu
android:nestedScrollingEnabled
(Problem 197932).
- Naprawiono błąd, przez który
- Zmiany w pomocy przy projektowaniu Biblioteka:
-
- Naprawiliśmy błąd polegający na tym, że ukryta dolna plansza obsługiwała dotyk. zdarzeń. (Problem 203654).
- Usunięto problem z układem w elemencie
BottomSheetBehavior
, gdy:fitsSystemWindows
to prawda. (Problem 203057) - Naprawiono problem z ułatwieniami dostępu w aplikacji
Snackbar
. (Problem 182145). - Naprawiono awarię
Snackbar
przesuń palcem. (Problem 203924). - Naprawiono błąd w aplikacji
AppBarLayout
:enterAlways
(Problem 203661). - Naprawiliśmy błąd polegający na niepotrzebnym usunięciu elementu
TextInputLayout
Filtr koloru tła obiektuEditText
. (Problem 203357).
Wersja 23.2.1
w marcu , 2016
- Zmiany dotyczące obsługi wersji 4 Biblioteka:
-
- Usunięto wyjątek w zakresie
DrawableCompat.wrap()
iLayerDrawable
w dniu Poziomy interfejsu API od 17 do 19. (Wydanie 201817) - Naprawiono błąd
ArrayIndexOutOfBoundsException
w:ViewDragHelper.shouldInterceptTouchEvent()
. (Problem 182262). - Usunięto błąd w aplikacji
ViewPager
związany z przewijanie obliczania zmian rozmiaru. - Naprawiono błąd
NullPointerException
, gdy funkcjaDrawerLayout.removeDrawerListener()
była wywoływana bez ustawionej wartościDrawerLayout.DrawerListener
. (Numer 202478) - Naprawiono błąd, który powodował, że parametr
ViewPager
nie ustawiał wartości Prawidłowo parametry:AccessibilityEvent
podczas przewijania. - Rozwiązaliśmy problem, który powodował opóźnienie podczas obracania urządzenia podczas używania
Drawable.wrap()
(Wydanie 201924)
- Usunięto wyjątek w zakresie
- Zmiany w wersji 7 biblioteka appcompat:
-
- Przywrócono zależność od zasobów wektorowych, aby deweloperzy korzystający z metody
zgodny z aplikacją
biblioteka nie jest wymuszana przy użyciu interfejsu
VectorDrawable
ani powiązanych z nim flag kompilacji. - Rozwiązaliśmy problem ze zgodnością z trybem nocnym i interfejsem API na poziomie 23. (Problem 201910)
- Wyeliminowaliśmy problem ze zgodnością z interfejsem
SwitchCompat
i interfejsem API poziomu 7. (Wydanie 201942) - Rozwiązaliśmy problem z propagacją wartości konfiguracyjnych w obiektach zasobów Wydanie 201928
- Rozwiązaliśmy problem ze zgodnością, który powodował, że interfejs
android.support.v7.app.NotificationCompat.MediaStyle
przycisk anulowania staje się niewidoczny na poziomie interfejsu API 21 i mniej. (Wydanie 202156) - Naprawiono awarię związaną ze zgodnością z interfejsem
AppCompatSpinner
w interfejsie API na poziomie 21 i niższym. (wydanie 202246) - Rozwiązaliśmy problem, który powodował, że styl
app:textAllCaps = "false"
nie działał w naszej pracy. (Wydanie 202117) - Naprawiono błąd, który występował podczas przywracania pliku
SearchView
. (Problem 201836) - Naprawiono wyciek pamięci, który występował podczas kolorowania zasobów rysowalnych przy użyciu AppCompat. (Wydanie 202379)
- Usunięto problem z funkcją
KeyEvent
w interfejsie API na poziomie 11 oraz obniżysz się. (Wydanie 202939)
- Przywrócono zależność od zasobów wektorowych, aby deweloperzy korzystający z metody
zgodny z aplikacją
biblioteka nie jest wymuszana przy użyciu interfejsu
- Zmiany w widoku kart w wersji 7 biblioteka:
-
- Dodano obsługę trybu nocnego dla funkcji
CardView
. (Problem 194497).
- Dodano obsługę trybu nocnego dla funkcji
- Zmiany w wersji 7 biblioteka recyclerview:
-
- Naprawiliśmy błędy związane z różnymi metodami specyfikacji. (Problem 201856)
- Skrócony okres blokady, w którym
RecyclerView
nie zezwala na stosowanie adaptera zmienia się podczas obliczania układu lub przewijania. (Problem 202046) - Rozwiązaliśmy problem, który powodował awarię wywoływania funkcji
notifyItemChanged()
przy elemencie, który nie był widoczny. (Problem 202136) - Rozwiązaliśmy problem, który występował, gdy
RecyclerView.LayoutManager
dodaje i usuwa widok w tym samym widoku pomiar skuteczności. (Problem 193958).
- Zmiany w wersji 7 biblioteka mediarouter:
-
- Rozwiązaliśmy problem, który występował podczas wywoływania interfejsu
MediaRouter.getInstance()
na poziomie interfejsu API 17. (Problem 180654).
- Rozwiązaliśmy problem, który występował podczas wywoływania interfejsu
- Zmiany w wersji v17 Biblioteka Leanback:
-
- Rozwiązaliśmy problem z usługą
GridLayout.onAddFocusables()
, w którym spowodował wybór niewłaściwego elementu. - Rozwiązaliśmy problem z
GuidedStepFragment
działaniami znika po zwinięciu działania.
- Rozwiązaliśmy problem z usługą
- Zmiany w pomocy przy projektowaniu Biblioteka:
-
- Naprawiono
TabLayout
awarię powodowane przez pulowanie kart. (Problem 201827) - Naprawiliśmy błąd w grze
NavigationView
, który powodował błąd. który chcesz wybrać. (Problem 201951) - Naprawiono błąd, który powodował, że aplikacja
setBackgroundTintList()
nie mogła już zmieniać tła koloru. (Problem 201873) - Rozwiązaliśmy problem, który powodował, że element
AppBarLayout
nie przewijał do końca niewidoczne, gdy używany zandroid:fitsSystemWindows = “true”
. (Problem 201822) - Rozwiązaliśmy problem, który powodował, że nie wyświetlały się reklamy z
BottomSheetDialog
prawidłowe wyświetlenia krótkich treści. (Problem 201793) - Rozwiązaliśmy problem z przenoszeniem obiektu
BottomSheetDialogFragment
sporadycznie po zmianie zawartości strony. (Problem 202125) - Naprawiono błąd związany z linkiem licznika TextInputLayout.
- Naprawiliśmy awarię, która wystąpiła, gdy usługa
TextInputLayout.getCounterMaxLength()
przywróciła zapisany stan. (Problem 202375) - Naprawiono błąd
ClassCastException
, który występował podczas przywracaniaCoordinatorLayout
za pomocą zapisany stan widoku danych innego niżCoordinatorLayout
.
- Naprawiono
- Zmiany w VectorDrawableCompat:
-
- Naprawiliśmy błąd polegający na tym, że w polu
android:tintMode
odczytywana była niewłaściwa zmienna. (Problem 201907)
- Naprawiliśmy błąd polegający na tym, że w polu
Wersja 23.2.0
Luty , 2016
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano
MediaBrowserCompat
w przypadku pomocy dotyczącejMediaBrowser
iMediaBrowserServiceCompat
w przypadku pomocyMediaBrowserService
. To jest przydatne gdy łączysz usługę w tle aplikacji multimedialnej z komponentami interfejsu, oraz integrację z Androidem Auto i Androidem Wear bez konieczności Interfejs API na poziomie 21 lub wyższym. - System wywołuje teraz adres
onActivityResult()
, aby uzyskać zagnieżdżona wartośćFragmentActivity
.
- Dodano
- Zmiany w AppCompat w wersji 7 biblioteka:
-
- Dodaliśmy funkcję trybu nocnego do interfejsu API na poziomie 14 i nowszych. Przejdź między elementami Material Design ciemne motywy jasne i materiałowe zależnie od pory dnia lub ustawienia aplikacji.
-
- Motywy dzienne i nocne znajdziesz tutaj:
<sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
AppCompatDelegate.setDefaultNightMode()
: ustawia do domyślnego trybu aplikacji, przekazując jedną z tych stałych:-
MODE_NIGHT_AUTO
MODE_NIGHT_NO
MODE_NIGHT_YES
MODE_NIGHT_FOLLOW_SYSTEM
AppCompatDelegate.setLocalNightMode()
: zastąpienia na ustawienie trybu nocnego dla lokalnego komponentu aplikacji.AppCompatDelegate.getDefaultNightMode()
: zwroty na domyślny tryb nocny.
- Motywy dzienne i nocne znajdziesz tutaj:
- Zmiany dla mediaroutera v7 biblioteka:
-
- Teraz
MediaRouteControllerDialog
poprawnie stosuje niestandardowe kolory motywu aplikacji.
- Teraz
- Zmiany dotyczące biblioteki pomocy dotyczącej projektowania:
-
- Dodano obsługę u dołu strony
arkusze. Wtyczka do interakcji,
BottomSheetBehavior
, pozwala, by widok podrzędny elementuCoordinatorLayout
działał jako planszę dolną. Klasa bazowaBottomSheetCallback
zapewnia wywołań zwrotnych do monitorowania zdarzeń na planszy dolnej.
- Dodano obsługę u dołu strony
arkusze. Wtyczka do interakcji,
- Zmiany dotyczące obsługi kart niestandardowych biblioteka:
-
- Chrome, Karty niestandardowe mogą teraz dodawać do aplikacji pasek z możliwością działania obok istniejącego górnego przycisku polecenia.
CustomTabsIntent.Builder.addToolBarItem()
: dodaje działanie na kartę niestandardową. Za jego pomocą możesz dodać wiele przycisków.CustomTabsSession.setToolBarItem()
: aktualizuje elementy wizualne dla elementów paska narzędzi. Ta metoda jest skuteczna tylko wtedy, gdy podano prawidłowy identyfikator, a sesja przeglądarki jest na pierwszym planie.
- Dodano bibliotekę pomocy VectorDrawable:
-
- Dodane zajęcia:
-
VectorDrawableCompat
AnimatedVectorDrawableCompat
- Dodaje do aplikacji obsługę zasobów typu
VectorDrawable
uruchomiony na poziomie API 7 lub wyższym. Zasoby:AnimatedVectorDrawable
są również obsługiwane na poziomie API 11 lub wyższym. Komponenty wektorowe mogą być są znacznie mniejsze niż komponenty z obrazem i powinny ograniczyć przez zmniejszenie liczby zasobów wymaganych do obsługi wielu ekranów urządzeń. - Ta biblioteka jest teraz zależnością biblioteki AppCompat w wersji 7, co umożliwia
deweloperzy i AppCompat
łatwo rysować obiekty wektorowe. Aby używać
VectorDrawableCompat
w aplikacjiImageButton
lubImageView
, użyj kodu XMLapp:srcCompat
lubsetImageResource()
. - Aby nadal odwoływać się do identyfikatorów atrybutów na poziomie interfejsu API 20 lub
niższy, dodaj tę flagę
appt
do plikubuild,gradle
: -
- Jeśli tworzysz kompilację za pomocą wtyczki Androida do Gradle w wersji 1.5.0 lub
niższy, dodaj do pliku
build.gradle
te informacje: -
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" } }
- Jeśli tworzysz kompilację za pomocą wtyczki Androida do Gradle 2.0.0 lub
wyżej, do pliku
build.gradle
dodaj te elementy: -
android { defaultConfig { vectorDrawables.useSupportLibrary = true } }
- Jeśli tworzysz kompilację za pomocą wtyczki Androida do Gradle w wersji 1.5.0 lub
niższy, dodaj do pliku
- Zmiany dla v17 Leanback Biblioteka:
-
- Do aplikacji
GuidedStepFragment
dodano nowe funkcje, który umożliwia użytkownikom podjęcie decyzji lub serię decyzji: -
- Do elementu
GuidedAction
dodano działania przycisku: GuidedStepFragment.setButtonActions()
: ustawia listę PrzyciskiGuidedAction
, które który użytkownik może wybrać w widoku Działania.- Pola opisu można teraz edytować:
-
GuidedAction.Builder.descriptionEditable()
: po zaliczeniutrue
ustawia opis działania z możliwością edycji.GuidedAction.getEditDescription()
: zwraca wartość, którą można edytować. jakoCharSequence
.
- Dodano menu działań podrzędnych:
-
GuidedAction.setSubActions()
: ustawia listęGuidedAction
jako menu rozwijane. w menu działań podrzędnych.
- Do elementu
- Dodano widżet
GuidedDatePickerAction
do funkcjiDatePicker
: -
- Data jest wybierana w kolumnach roku, miesiąca i dnia oraz zawiera zakresu, który można dostosować.
GuidedDatePickerAction.Builder
: klasa konstruktora obiektuGuidedDatePickerAction
.GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat)
: ustaw odpowiedni format daty, przekazując parametr odpowiedni trzyznakowyString
, np.“YMD”
lub“MDY”
. Możesz też użyć atrybutu XMLdatePickerFormat
.
- Do aplikacji
- Zmiany w narzędziu RecyclerView w wersji 7 biblioteka:
-
- Aplikacja
RecyclerView
może teraz wyrazić zgodę funkcja AutoMeasure, która umożliwiaRecyclerView.LayoutManager
łatwe zawijanie lub obsługiwać różne specyfikacje pomiarowe dostarczane przez element nadrzędny elementuRecyclerView
. it obsługuje wszystkie istniejące funkcje animacjiRecyclerView
. -
- Jeśli masz niestandardowy
RecyclerView.LayoutManager
, Zadzwoń pod numersetAutoMeasureEnabled(true)
, aby zacząć korzystać z nowego AutoMeasure API. Wszystkie wbudowane obiektyRecyclerView.LayoutManager
domyślnie włączyć automatyczny pomiar. RecyclerView.LayoutManager
nie ignoruje już niektórych ustawień typuRecyclerView.LayoutParams
, na przykładMATCH_PARENT
w kierunku przewijania.Uwaga: zniesione ograniczenia mogą powodować, nieoczekiwane zachowanie układów. Wpisz z prawidłowymi parametrami układu.
- Jeśli masz niestandardowy
- Podczas aktualizowania obiektu
RecyclerView.ViewHolder
za pomocą ładunku informacje,DefaultItemAnimator
teraz wyłącza animacje zmian. - Możesz teraz zmienić prędkość ucieczki
ItemTouchHelper
do kontrolować czułość przesuwania. Aby ułatwić lub utrudnić przesunięcie palcem, zastąpgetSwipeEscapeVelocity(float defaultValue)
i zmodyfikujdefaultValue
.
- Aplikacja
Wersja 23.1.1
listopadzie 2015 r.
- Zmiany w bibliotece Recyclerview w wersji 7:
-
- Usunięto awarię, która występowała przy przesuwaniu palcem po ekranie, by zamknąć
Klasa narzędziowa
ItemTouchHelper
udostępnia element, a następnie dodaj element. (Numer 190500)
- Usunięto awarię, która występowała przy przesuwaniu palcem po ekranie, by zamknąć
Klasa narzędziowa
- Zmiany w bibliotece preferencji wersji 7:
-
- Naprawiono problem z użyciem ProGuard. (Problem 183261)
- Zmiany w bibliotece pomocy Leanback w wersji 17:
-
- Naprawiono kilka błędów wewnętrznych w tej bibliotece.
- Zmiany w bibliotece pomocy dotyczącej projektowania:
-
- Do klasy
NavigationView
dodano metodęgetHeaderView
. - Usunięto problem z przezroczystym tłem obiektu
FloatingActionButton
w na urządzeniach z Androidem 4.0 (poziom interfejsu API 15) lub starszym. (Numer 183315)
- Do klasy
Wersja 23.1.0
październiku 2015 r.
- Zmiany w bibliotece pomocy w wersji 4:
-
- Dodano obsługę interfejsu
OnScrollChangedListener
do WidżetNestedScrollView
. it umożliwia odbieranie wywołań zwrotnych, gdy przewijają się pozycje X lub Y. - Dodano klasę
MediaButtonReceiver
do przekazywania otrzymanych elementów sterujących odtwarzaniem z usługą, która zarządza klasąMediaSessionCompat
.MediaSessionCompat
zajęcia ma który automatycznie znajduje odbiornik przycisku multimedialnego w pliku manifestu. O odbiornik przycisku multimedialnego to kluczowy element obsługi elementy sterujące odtwarzaniem za pomocą elementów sprzętowych lub elementów sterujących Bluetooth.
- Dodano obsługę interfejsu
- Zmiany w bibliotece appcompat w wersji 7:
-
- Dodano widżety interfejsu Material Design
Seekbar
iImageButton
. - Zaktualizowano widżet
ImageView
, aby obsługiwał funkcję odcienia. - Zaktualizowano wygląd i sposób działania widżetu
SwitchCompat
.
- Dodano widżety interfejsu Material Design
- Zmiany w bibliotece mediaroutera v7:
-
- Do klasy
MediaRouteChooserDialog
dodano te funkcje: - Wyświetla stronę wczytywania podczas odkrywania dostawców tras multimediów.
- Zawiera ikonę typu urządzenia, która ułatwia jego identyfikację.
- Sortuje trasy zgodnie z częstotliwością ich używania w bieżącej aplikacji.
- Obsługuje tryb poziomy.
- Do klasy
MediaRouteControllerDialog
dodano te funkcje: - Rozpoznaje przesyłanie ekranu i podaje prawidłowy opis.
- Obsługuje okładki albumów o różnych rozmiarach i formatach obrazu i wczytuje grafikę asynchronicznie.
- Automatycznie wybiera kolor treści na podstawie głównego koloru aplikacji.
- Dostosowuje układ okien do miejsca dostępnego na urządzeniu.
- Obsługuje tryb poziomy.
- Do klasy
- Zmiany w bibliotece palety wersji 7:
-
- Dodano metodę
setRegion()
, która umożliwia wyodrębnianie koloru z konkretnego w regionie obiektuBitmap
.
- Dodano metodę
- Zmiany w bibliotece Recyclerview w wersji 7:
-
- Do klasy
ItemAnimator
dodaliśmy ulepszony interfejs API animacji, aby ulepszyć dostosowania: - Animacje zmian nie wymuszają już 2 kopii obiektu
ViewHolder
, co umożliwia korzystanie z animacji zawartości elementów. Oprócz tego obiektItemAnimator
decyduje, czy chce ponownie użyć tego samego obiektuViewHolder
, czy utworzyć nowy. - Nowy interfejs API rekordów informacyjnych zapewnia klasie
ItemAnimator
elastyczność. aby zbierać dane w odpowiednim punkcie cyklu życia szablonu. Ta informacja jest późniejsza przekazywane do animowanych wywołań zwrotnych.
- Przedstawiono plan łatwego przejścia w przypadku tej niezgodnej wstecznie zmiany interfejsu API:
- Jeśli zajęcia
ItemAnimator
zostały już przez Ciebie przedłużone, możesz zmienić klasy podstawowej doSimpleItemAnimator
, a Twój kod powinien działać tak jak wcześniej. KlasaSimpleItemAnimator
udostępnia stary interfejs API przez opakowanie nowego interfejsu API. - Niektóre metody zostały usunięte z klasy
ItemAnimator
. Poniżej kod nie będzie już skompilowany:
Kotlin
recyclerView.itemAnimator.supportsChangeAnimations = false
Java
recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
Możesz go zastąpić kodem:
Kotlin
val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator animator?.supportsChangeAnimations = false
Java
ItemAnimator animator = recyclerView.getItemAnimator(); if (animator instanceof SimpleItemAnimator) { ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); }
- Do klasy
- Zmiany w wersji 7, v14 oraz Biblioteka obsługi preferencji na potrzeby wersji 17:
-
- Usunęliśmy interfejsy API do kontrolowania okien
EditText
.
- Usunęliśmy interfejsy API do kontrolowania okien
- Zmiany w bibliotece pomocy Leanback w wersji 17:
-
- Dodaliśmy wersję klasy
GuidedStepFragment
do biblioteki pomocy (rozszerzaandroid.support.v4.app.Fragment
) oraz poprawione animacje i przejścia. - Zaktualizowano klasę
GuidedStepFragment
, tak aby można było umieścić ją nad: istniejących treści. - Dodaliśmy możliwość dodawania adnotacji do różnych typów wyszukiwań w
SearchFragment
zajęcia. - Dodano obsługę przesuwania przesuwania palcem w elemencie
VerticalGridFragment
. zajęcia.
- Dodaliśmy wersję klasy
- Zmiany w bibliotece pomocy dotyczącej projektowania:
-
- Dodano
liczenie znaków w widżecie
TextInputLayout
. - Do klasy
AppBarLayout
dodano obsługę przyciągania do krawędzi przez dodanie parametru stałaSCROLL_FLAG_SNAP
. Po zakończeniu przewijania, jeśli widok częściowo widoczne, widok zostanie przyciągnięty i przewinięty do najbliższej krawędzi. - Do klasy
NavigationView
dodaliśmy obsługę widoków niestandardowych przy użyciu interfejsu Atrybutapp:actionLayout
lubMenuItemCompat.setActionView()
.
- Dodano
liczenie znaków w widżecie
- Zmiany w bibliotece obsługi kart niestandardowych:
-
- Metoda
enableUrlBarHiding()
została dodana do metodyCustomTabsIntent
. zajęcia. Umożliwia klientowi określenie, czy pasek adresu URL powinien być ukrywany automatycznie przy przewijaniu w dół. - Metoda
setActionButton()
została dodana do metodyCustomTabsSession
. zajęcia. Dzięki temu klient zmienić ikonę przycisku polecenia niestandardowego na już uruchomionej karcie niestandardowej. - Dodano stałe
TAB_SHOWN
iTAB_HIDDEN
jako nowe zdarzenia dla metodyonNavigationEvent
algorytmuCustomTabsCallback
zajęcia.
- Metoda
Wersja 23.0.1
Wrzesień 2015 r.
- Zmiany w wersjach 7 i Biblioteka obsługi preferencji v14:
-
- Dodano pliki układu i stylu Material Design. (Problem 183376)
- Zmiany w bibliotece appcompat w wersji 7:
-
- Rozwiązaliśmy problemy powodujące awarie w klasie
Fragment
przez ograniczenie użycia warstw sprzętowych do Androida 4.1 (poziom interfejsu API 16) lub nowszego. (Numer 183896) - Rozwiązaliśmy problem, który powodował, że przyciski sprzętowe nie działały, gdy aktywność ustawiała
Toolbar
klasa, która ma działać jakoActionBar
za pomocą metodysetSupportActionBar()
. (Numer 183334) - Zajęcia
AppCompatDialogFragment
zostały zaktualizowane, nie rzuca jużWindows feature must be requested before adding content
. (Numer 183186)
- Rozwiązaliśmy problemy powodujące awarie w klasie
- Zmiany w bibliotece pomocy dotyczącej projektowania:
-
- Naprawiono
AppBarLayout
klasa, więc teraz rysuje się prawidłowo po i rotacji. (Numer 183109) - Naprawiono
TabLayout
, więc działa teraz prawidłowo, gdy użytkownik klika po przesunięciu palcem. (Numer 183123)
- Naprawiono
- Zmiany w bibliotece obsługi kart niestandardowych:
-
- Obniżenie
minSdkVersion
wartości z 16 do 15 dla obsługi wersji. - Dodano sposób generowania
CustomTabsSessionToken
z intencji.
- Obniżenie
Wersja 23
Sierpień 2015
- Dodano nowe biblioteki pomocy:
Pełną listę zmian w Bibliotece pomocy znajdziesz w Pomoc techniczna Raport Różnice w interfejsie Library API
Wersja 22.2.1
lipcu 2015 r.
- Zmiany w bibliotece pomocy dotyczącej projektowania:
-
- Dodano metody
hide()
ishow()
do metodyFloatingActionButton
zajęcia dotyczące automatyzacji wyzwalanie animacji. - Stałą
LENGTH_INDEFINITE
dodano do elementuSnackbar
klasa za wyświetlanie paska powiadomień do chwili jego zamknięcia lub wyświetlenia kolejnego paska powiadomień. Ponadto dodaliśmysetActionTextColor(int)
isetActionTextColor(ColorStateList)
. - Metoda
getSelectedTabPosition()
została dodana do metodyTabLayout
klasa za pobranie bieżącej wartości wybranej karty. - Udostępniliśmy w pełni wydajny interfejs API dla
android.support.v7.app.NotificationCompat.MediaStyle
klasa dla metody tworzyć łańcuchy. - Dodaliśmy do sekcji
RecyclerView
za wstawianie elementów zbiorczo.
- Dodano metody
Pełną listę zmian w Bibliotece pomocy znajdziesz w Pomoc techniczna Raport Różnice w interfejsie Library API
Wersja 22.2.0
Maj 2015 r.
- Dodano bibliotekę pomocy dotyczącej projektowania:
-
- Dodano
TextInputLayout
do wyświetlania WskazówkaEditText
i tekst błędu w formie etykiet pływających. - Dodano
FloatingActionButton
za zaimplementowanie jako główne działanie w interfejsie jako pływający przycisk polecenia, który obsługuje rozmiar domyślny lub mini. - Dodano
Snackbar
, aby zwiększyć przydatność z opcjonalnym działaniem na animowanym pasku powiadomień. - Dodano dyrektywę
TabLayout
za wdrożenie poprawek i z możliwością przewijania tabulatorów. integracja zViewPager
- Dodano
NavigationView
do implementacji panel nawigacji w tym możliwość rozwijania pozycji menu za pomocą Zasób menu. - Dodano
CoordinatorLayout
(uniwersalnego) Układ używany do tworzenia zależności między widok równorzędny i umożliwia łatwe przewijanie treści między komponentamiCoordinatorLayout.Behavior
Wiele wzorów Komponenty bibliotek są podrzędne wobecCoordinatorLayout
- Dodano
AppBarLayout
, kontener dlaToolbar
i inne widoki danych (np.TabLayout
) dla reagowanie na przewijane zdarzenia przez przewijanie poza ekran, stając się w reakcji lub zwijanie/odwijanie przed przewijaniem w dół albo na ekranie. - Dodano
CollapsingToolbarLayout
do sterowania jak zwija się elementToolbar
. Pasek narzędzi może być zwijany przez: przypinanie komponentów na górze ekranu podczas jego zwijania, dzięki czemu przewijanie paralaksy komponentów takich jakImageView
, lub dodanie koloru siatki treści, gdy widok jest częściowo zwinięty.
- Dodano
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano
getContentChangeTypes()
orazsetContentChangeTypes()
metody i związane z nimi typy zmian doAccessibilityEventCompat
do obsługi zdarzeń ułatwień dostępu. - Dodano
getActiveQueueItemId()
,getCustomActions()
, orazgetExtras()
z powiązanymi polami stanu zPlaybackStateCompat
zajęcia dla pobierania niestandardowych działań z kolejki. - Dodano
addCustomAction()
,setActiveQueueItemId()
, orazsetExtras()
do funkcjiPlaybackStateCompat.Builder
zajęcia do dodania niestandardowe działania na stan odtwarzania. - Dodano
fromCustomAction()
igetCustomAction()
metod doPlaybackStateCompat.CustomAction
zajęcia za pobieranie działań niestandardowych z kolejki. - Dodano:
isAttachedToWindow()
,offsetLeftAndRight()
ioffsetTopAndBottom()
do pracy z widokami danych w klasieViewCompat
. - Dodano:
addOnPageChangeListener()
,clearOnPageChangeListeners()
iremoveOnPageChangeListener()
metody reagowania na stronę w klasieViewPager
zmian.Wyłączono Metoda
ViewPager.setOnPageChangeListener()
. - Dodano
Metoda
notifySubtreeAccessibilityStateChanged()
do klasaViewParentCompat
służąca do powiadamiania elementu nadrzędnego dotyczącego widoku o zmianie stanu ułatwień dostępu jednego z elementów podrzędnych. - Dodano:
translationZ()
,translationZBy()
,z()
izBy()
do klasyViewPropertyAnimatorCompat
dla argumentu dodanie animacji.
- Dodano
- Zmiany w bibliotece appcompat w wersji 7:
-
- Dodano
onWindowStartingSupportActionMode()
do funkcjiAppCompatActivity
,AppCompatCallback
iAppCompatDialog
klasy do obsługi trybów działań rozpoczęte w bieżącym oknie. - Dodano
isHandleNativeActionModesEnabled()
isetHandleNativeActionModesEnabled()
do funkcjiAppCompatDelegate
klasa do obsługi trybów działań natywnych.
- Dodano
Pełną listę zmian w Bibliotece pomocy znajdziesz w Pomoc techniczna Raport Różnice w interfejsie Library API
Wersja 22.1.0
Kwiecień 2015
- Zmiany w bibliotece adnotacji:
-
- Dodaliśmy bibliotekę Adnotacje, aby umożliwić obsługę rozszerzonych inspekcji kodu. Adnotacje są dodawane jako tagi metadanych dołączane do zmiennych, parametrów, i zwracają wartości w celu sprawdzenia zwracanych wartości, przekazanych parametrów i parametrów lokalnych zmiennych i pól.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano zajęcia
ColorUtils
aby udostępnić zestaw metod użytkowych związanych z kolorami. - Dodano
unwrap()
iwrap()
metod doDrawableCompat
, dzięki czemu możesz korzystać zsetTint()
,setTintList()
, isetTintMode()
na wszystkich urządzeniach z interfejsem API na poziomie 4 lub wyższym. - Dodano zajęcia
TraceCompat
do zapisywanie zdarzeń śledzenia w buforze śledzenia systemu, które mogą być następnie zbierane i zwizualizowane za pomocą narzędzia Systrace. - Dodano zajęcia
CircularIntArray
do tworzenia struktur danych w postaci okrągłych liczb całkowitych. - Dodano:
clear()
,removeFromStart()
, iremoveFromEnd()
do klasyCircularArray
. Ponadto zmieniły się istniejących metod, które są nieostateczne. - Dodano
InputDeviceCompat
jako klasa pomocnicza w zakresie dostępu do danychInputDeviceCompat
zajęcia. - Dodano
LayoutInflaterCompat
jako klasy pomocniczej, aby uzyskać dostęp do danych wLayoutInflaterCompat
zajęcia i dodaliśmy interfejsLayoutInflaterFactory
. - Dodano klasy, metody i interfejsy do obsługi zagnieżdżonego przewijania.
- Dodano
NestedScrollingChildHelper
iNestedScrollingParentHelper
klas pomocniczych do implementacji zagnieżdżonych widoków nadrzędnych i podrzędnych. - Dodano
NestedScrollingChild
do zaimplementowania w podklasachView
. - Dodano
NestedScrollingParent
iScrollingView
do obsługi i udostępniać interfejsy API związane z przewijaniem. - Dodano
Metoda
getNestedScrollAxes()
doViewGroupCompat
zajęcia. - Do klasy
ViewParentCompat
zostały dodane metody do obsługują zagnieżdżone przewijanie. - Dodano
NestedScrollView
do obsługi zagnieżdżonych przewijanych elementów nadrzędnych i podrzędnych zarówno w nowych, jak i starszych wersjach na urządzeniu z Androidem.
- Dodano
- Do funkcji
MotionEventCompat
dodano metody i stałe do pobierania wartości osi i źródła zdarzeń. - Zaktualizowano:
AccessibilityNodeInfoCompat
do dodawania metod do błędów, unieważniania treści i etykiet. - Dodaliśmy te klasy interpolacji na potrzeby animacji:
FastOutLinearInInterpolator
,FastOutSlowInInterpolator
,LinearOutSlowInInterpolator
,LinearOutSlowInInterpolator
iPathInterpolatorCompat
. - Dodano zajęcia
Space
, aby utworzyć luki między w układach do zwykłych obciążeń. Ta klasa została wycofana z biblioteki siatki. - Dodano zajęcia
TextViewCompat
do dostępu funkcje dostępne w usłudzeTextView
. - Dodaliśmy parametr przesunięcia do sekcji
onPull()
wEdgeEffectCompat
zajęcia.
- Dodano zajęcia
- Zmiany w bibliotece appcompat w wersji 7:
-
- Dodaliśmy obsługę odcieni dla widżetów zgodnych z aplikacją, takich jak
AppCompatAutoCompleteTextView
,AppCompatButton
,AppCompatCheckBox
,AppCompatCheckedTextView
,AppCompatEditText
,AppCompatMultiAutoCompleteTextView
,AppCompatRadioButton
AppCompatRatingBar
,AppCompatSpinner
iAppCompatTextView
. - Zaktualizowano
AppCompatActivity
jako element podstawowy w przypadku ćwiczeń, które korzystają z funkcji paska działań z biblioteki pomocy. Te zajęcia zastępuje wycofaneActionBarActivity
. - Dodano
Interfejs
AppCompatCallback
który będzie obsługiwać wywołania zwrotne AppCompat. - Dodano
AppCompatDelegate
klasa abstrakcyjna możesz wykorzystać tę funkcję, aby rozszerzyć wsparcie AppCompat na dowolne działanie. - Dodano
AppCompatDialog
zajęcia jako klasy podstawowej dla dialogów o tematyce AppCompat. - Dodano styl wskaźnika postępu
AlertDialog
iAlertDialog.Builder
klas do udostępnienia AppCompat temat:AlertDialog
. - Dodano zajęcia
Palette.Builder
do generowaniaPalette
instancji.- Dodano
from(Bitmap)
do klasyPalette
do zacznij generować paletę ze zwróconymiPalette.Builder
instancję. - Wycofano:
Palette.generate()
orazPalette.generateAsync()
metody.
- Dodano
- Dodano
Metoda
getAbsoluteAlignment()
doGridLayout.Spec
zajęcia. - Wycofano użycie atrybutu
app:theme
na potrzeby określania styluToolbar
Teraz możesz używaćandroid:theme
w przypadku pasków narzędzi na wszystkich urządzeniach z interfejsem API na poziomie 7 lub wyższym oraz Obsługaandroid:theme
wszystkich widżetów na urządzeniach z interfejsem API 11 i wyższym.
- Dodaliśmy obsługę odcieni dla widżetów zgodnych z aplikacją, takich jak
- Zmiany dotyczące biblioteki funkcji v17 Leanback:
-
- Dodano
GuidedStepFragment
,GuidanceStylist
iGuidedActionsStylist
do zespołu pomocy wieloetapowego procesu decyzyjnego.
- Dodano
- Zmiany w bibliotece Recyclerview w wersji 7:
-
- Dodano
SortedList
zajęcia, w których można wyświetlić elementy uporządkowanie listy i powiadomienie o zmianach na liście. - Dodano zajęcia
SortedListAdapterCallback
mogą powiązać posortowaną listę zRecyclerView.Adapter
zajęcia.
- Dodano
- Zmiany w bibliotece renderscript v8:
-
- Dodano zajęcia
ScriptIntrinsicHistogram
do: wykorzystać jako filtr histogramu. - Dodano zajęcia
ScriptIntrinsicResize
do: zmiany rozmiaru alokacji 2D.
- Dodano zajęcia
- Zmiany w bibliotece pomocy do wersji 4:
-
- zaktualizowaliśmy metodę
getDrawable()
, aby zwracała obiekt rysowalny dla określonego identyfikatora zasobu; gęstości ekranu i motywu. - Dodaliśmy metodę
setImportantForAccessibility()
, aby można było wskazać, czy wyświetlenie ma być aktywowane zdarzeń związanych z ułatwieniami dostępu. - Dodano metodę
getStatusBarBackgroundDrawable()
, która umożliwia wyświetlanie tła paska stanu obiekt rysowalny. - Do metody zostały dodane
NotificationCompat.CarExtender.UnreadConversation
, aby aplikacje do obsługi wiadomości Androida Auto mogły pobierać dodatkowe dane dotyczące powiadomień. - Dodaliśmy metodę
getProgressCircleDiameter()
, która zwraca średnicę układu okręgu. - Zmieniono wartość domyślną:
DrawerLayout
kolor paska stanu nacolorPrimaryDark
.
- zaktualizowaliśmy metodę
- Zmiany w bibliotece appcompat w wersji 7:
-
- Dodano styl wskaźnika postępu
Base_Widget_AppCompat_Spinner_Underlined
- Dodano style zabarwionych widżetów z atrybutem
Widget_AppCompat_AutoCompleteTextView
,MultiAutoCompleteTextView
,TextAppearance_AppCompat_Button
iBase_Widget_AppCompat_RatingBar
- Dodano styl wskaźnika postępu
- Zmiany dotyczące biblioteki funkcji v17 Leanback:
-
- Dodano
getRecycledPoolSize()
isetRecycledPoolSize()
metody zezwalające na niestandardowe rozmiary pul z recyklingu. - Dodano atrybut
WRAP_CONTENT
do ustawienie szerokości układu, aby umożliwić obsługę opakowanych treści w przypadku ikon tytułów. - Zdefiniowano
R.transition
w pliku XML do ulepszyć aktualizacje dotyczące przejścia. - Włączono obsługę układów od prawej do lewej.
- Dodano obsługę kluczowych zdarzeń związanych z odtwarzaniem i wstrzymywaniem multimediów
PlaybackOverlayFragment
zajęcia. - Do interfejsu API dodano przejścia typu „Enter i Return”
BrowseFragment
iDetailsFragment
zajęcia. - Dodano metodę
replace()
służącą do zastępowania elementów w tablicy adaptera obiektu.
- Dodano
- Zmiany w bibliotece mediaroutera v7:
-
- Ikony Google Cast zostały zaktualizowane, tak aby korzystały z Material Design.
- Zaktualizowano wszystkie ikony używane w oknach dialogowych
MediaRouter
, aby korzystały z interfejsu Material Design.
- Zmiany w bibliotece Recyclerview w wersji 7:
-
- Dodano
getlayoutPosition()
igetadapterPosition()
metod do funkcjiRecyclerView
zajęcia. - Wycofano:
classgetChildPosition()
orazfindViewHolderForPosition()
metod wRecyclerView
zajęcia. - Wycofaliśmy metodę
getPosition()
w:RecyclerView.ViewHolder
zajęcia. - Wycofaliśmy metodę
getViewPosition()
w:RecyclerView.LayoutParams
zajęcia.
- Dodano
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano kilka:
NotificationCompat.WearableExtender
metody poprawy wyświetlania kodów kreskowych w powiadomieniach na urządzeniach do noszenia.
- Dodano kilka:
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano
NotificationCompat.CarExtender
na potrzeby obsługi rozszerzeń Androida Auto do powiadomień.
- Dodano
- Zmiany w bibliotece appcompat w wersji 7:
-
- Dodano konstruktor
PopupMenu
do obsługi nowego wyskakującego okienka menu. - Dodano obsługę opisu ikony zwijania w elemencie
Toolbar
zajęcia. - Zaktualizowano widżet
SearchView
, aby obsługiwał wyświetlaniecommitIcon
. - Usunięto atrybut
buttonGravity
zToolbar
zajęcia.
- Dodano konstruktor
- Zmiany w bibliotece Cardview w wersji 7:
-
- Dodano interfejs API
setCardBackgroundColor(ColorStateList)
do umożliwia zmianę koloru tła elementuCardView
. - Zmieniono
CardView
, aby dokładniej informować o swoich danych przezroczystości jakoTRANSLUCENT
.
- Dodano interfejs API
- Zmiany w widoku Recyclerview w wersji 7 biblioteka:
-
- Dodano
TOUCH_SLOP_DEFAULT
i stałeTOUCH_SLOP_PAGING
do klasyRecyclerView
na potrzeby konfiguracji stronicowania na stronie.
- Dodano
- Zmiany dotyczące biblioteki funkcji v17 Leanback:
-
- Dodano obsługę generowania fragmentów kodu w wersji 4.
- Zmieniono dodatkowy kolor tekstu w tabeli
CardView
.
- Dodane biblioteki obsługi multidex, aby obsługiwać wiele Pliki wykonywalne (DEX) Dalvik w celu uzyskania obsługi plików Multi-Dex w wersjach starszych niż Android 5.0.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano obsługę języka
Fragment
przejścia na urządzenia z Androidem 5.0 (poziom interfejsu API 21). Pamiętaj, że przejścia nie mają wpływu na uruchomione urządzenia Android 4.4 lub starszy. - Dodano poziom
DocumentFile
do wygładzania przejście zFile
podczas pracy z drzewami dokumentów. Klasa wymaga jednak, większy nakład pracy w porównaniu do DodanoDocumentsContract
interfejs API Android 4.4 (poziom API 19). W przypadku Androida 4.4 zalecamy korzystanie zDocumentsContract
. i wyższe.
- Dodano obsługę języka
- Zmiany w przypadku kompatybilności aplikacji w wersji 7 biblioteka:
-
- Dodano obsługę materiałów do projektowania.
- Dodano funkcję
Toolbar
, która powoduje uogólnienie funkcjeActionBar
w w układach aplikacji. - Zaktualizowano
ActionBarDrawerToggle
, który zawiera animację przesuwania się menu po strzałkę - Zaktualizowano typowe widżety interfejsu, aby umożliwić zmianę odcieni za pomocą motywu w przypadku urządzeń z systemem starszym niż Android 5.0.
- Dodano backend
SwitchCompat
widżetuSwitch
dodanego w Android 4.0 (poziom API 14).
- Nowa biblioteka Card View w wersji 7:
-
- Dodaliśmy widżet
CardView
, który zapewnia implementację zgodną z Material Design, elementów danych.
- Dodaliśmy widżet
- Nowy recyclerview w wersji 7 biblioteka:
-
- Dodano widżet
RecyclerView
. który zapewnia elastyczny widok listy z ograniczonym okresem w duży zbiór danych.
- Dodano widżet
- Nowa biblioteka palet w wersji 7:
-
- Dodano
Palette
zajęcia, który pozwala wyodrębnić z obrazu dominujące kolory.
- Dodano
- Nowa biblioteka Leanback v17:
-
- Dodano obsługę tworzenia interfejsów użytkownika telewizora, w tym
BrowseFragment
,DetailsFragment
iPlaybackOverlayFragment
Więcej informacji na temat korzystania z tych widżetów interfejsu Więcej informacji: Tworzenie telewizora Aplikacje do odtwarzania strumieniowego.
- Dodano obsługę tworzenia interfejsów użytkownika telewizora, w tym
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano rozszerzoną obsługę powiadomień na Androidzie Wear w
NotificationCompat.WearableExtender
, która umożliwia Ci aby określić funkcje urządzenia do noszenia w powiadomieniach. - Dodano
NotificationCompat.Action.WearableExtender
, który umożliwia dodawanie działań na powiadomieniach na urządzeniu do noszenia. - Dodano
NotificationManagerCompat
, który umożliwia Ci aby wysyłać powiadomienia obsługujące funkcje do noszenia. - Dodano
RemoteInput
, który obsługuje urządzenia mobilne aby odbierać głosowe wprowadzanie tekstu z powiadomienia, które wyświetla się na urządzeniu do noszenia. - Poprawiono obsługę potwierdzeń dotyku w
SwipeRefreshLayout
- Dodano rozszerzoną obsługę powiadomień na Androidzie Wear w
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano zajęcia
SwipeRefreshLayout
, który umożliwia użytkownikom odświeżanie zawartości widoku według kategorii gest przesunięcia. - Rozwiązaliśmy problemy z ułatwieniami dostępu w szufladach nawigacji.
- Dodano zajęcia
- Zmiany w bibliotece appcompat w wersji 7:
-
- Rozwiązaliśmy problemy z paskiem działań w tle.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Ulepszono funkcję
PrintHelper
przez dodanie metody asynchronicznej obsługi drukowania. - Poprawiono przybliżenie klasy
DrawerLayout
addChildrenForAccessibility()
. - Naprawiono odbicie lustrzane slajdów w
ActionBarDrawerToggle
. - Rozwiązanie problemu występującego osobno podczas usuwania elementu z iteratora kolekcji.
- Ulepszono funkcję
- Zmiany w bibliotece mediaroutera v7:
-
- Poprawiono identyfikację trasy za pomocą pełnej nazwy komponentu w
MediaRouteProvider.ProviderMetadata
. - Zaktualizowano:
MediaRouteChooserDialog
, aby ukryć wyłączone trasy.
- Poprawiono identyfikację trasy za pomocą pełnej nazwy komponentu w
- Zmiany w bibliotece renderscript v8
-
- Dodano propagację błędów dla warstwy thunkingu RenderScript.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodaliśmy obsługę zewnętrznych interfejsów API pamięci masowej z użyciem
getObbDirs()
,getExternalFilesDirs()
,getExternalCacheDirs()
, igetStorageState()
. Te metody pomocnicze zawsze zwracają obiekt z jednym plikiem na urządzeniach z Androidem 4.3 (poziom interfejsu API 18) i starsze. W przypadku Androida 4.4 (poziom interfejsu API 19) lub nowszego te metody mogą zwrócić więcej niż jeden obiekt pliku. - Dodano
PrintHelper
zajęcia, które współpracują z Interfejsy API drukowania umożliwiające drukowanie zdjęć przy użyciu minimum kodu. - Dodano obsługę interfejsu „przeciągnij, aby otworzyć” dla wyskakujących menu. Więcej informacji:
PopupMenuCompat
iListPopupWindowCompat
- Ulepszona obsługa ułatwień dostępu
Metoda
findFocus()
wAccessibilityNodeProviderCompat
oraz MetodagetLiveRegion()
wAccessibilityNodeInfoCompat
- Dodano klasę pomocniczą
ScaleGestureDetectorCompat
dla dostęp do nowych metod skalowania gestów. - Usunięto problem z elementem
ActionBarDrawerToggle
w w przypadku języków pisanych od prawej do lewej. - Zmodyfikowano opcję
AutoScrollHelper
do wykorzystania zdarzeń dotyku lub umożliwiać ich przekazywanie do innych widoków.
- Dodaliśmy obsługę zewnętrznych interfejsów API pamięci masowej z użyciem
- Zmiany w bibliotece mediaroutera v7:
-
- Dodano obsługę kolejkowania multimediów, ustawiania wartości nagłówków HTTP i multimediów czas odtwarzania.
- Dodano konkretne działania rozpoczęcia, pobierania i zakończenia sesji do jawnego zarządzania multimediami w trakcie sesji odtwarzania przy użyciu routera multimediów.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Interfejs
- Dodano
BidiFormatter
do obsługi ciągi tekstowe łączące tekst w formacie od prawej do lewej oraz od lewej do prawej. - Zmodyfikowano
ViewPager
, aby lepiej obsługiwać przypadki, w których przy wstępnym przetwarzaniu układu zmierzona szerokość strony tego elementu wynosi zero. - Zmodyfikowane
DrawerLayout
iSlidingPaneLayout
, aby nie zgłaszać wyjątków dla: podczas edytowania kodu projektu.
- Dodano
- Ułatwienia dostępu
- Dodano
ExploreByTouchHelper
, aby uprościć: wdrożenia ułatwień dostępu w widokach niestandardowych. - Naprawiono problem z polem
ViewPager
WypełniamTYPE_VIEW_SCROLLED
zdarzeń ułatwień dostępu. - Usunięto wyjątek wskaźnika null w
ViewPager
, gdy: wypełnianie zdarzeń ułatwień dostępu. - Uproszczono:
AccessibilityNodeInfoCompat
zmieniając dane wejścioweCharSequence
na obiektyString
. - Wycofano:
AccessibilityRecordCompat
konstruktorem, w którym jako dane wejściowe jest używanyObject
.
- Dodano
- Multimedia
- Dodano
TransportMediator
klasę pomocniczą do zarządzania sterowanie przesyłaniem multimediów, w tym odtwarzanie, wstrzymywanie i pomijanie oraz inne działania związane z multimediami. - Dodano:
DisplayManagerCompat
na potrzeby zarządzania aby wyświetlać dane wyjściowe na co najmniej jednym urządzeniu.
- Dodano
- Inne zmiany
- Dodano
WakefulBroadcastReceiver
klasę pomocniczą dla: wdrożenie wspólnego wzorca wykrywania zdarzenia wybudzenia urządzenia i zakończenia pracy. doService
, jednocześnie dbając o to, aby urządzenie nie wróciło do przed zakończeniem przekazywania. - Dodaliśmy dwa nowe interfejsy API:
commitContentChanged()
irollbackContentChanged()
, do:AsyncTaskLoader
do zajmuje się aktualizacjami w tle po zmianach w danych, które są następnie anulowane.
- Dodano
- Interfejs
- Nowa biblioteka aplikacji w wersji 7:
-
- Dodano
ActionBar
, aby umożliwić implementację wygląd interfejsu paska działań do Androida w wersji 2.1 (poziom interfejsu API 7) lub nowszego. Korzystanie z tych zajęć wymaga wdrożenie przez użytkowników, rozszerzającActionBarActivity
zajęcia.
- Dodano
- Nowa biblioteka mediarouterów v7:
-
Dodaliśmy nową bibliotekę mediarouter, która obsługuje wersję przedpremierową Google Cast dla programistów. Interfejsy API biblioteki Mediarouter v7 umożliwiają kontrolowanie routingu kanałów multimedialnych i strumieni z bieżącego urządzenia na ekrany zewnętrzne, i inne urządzenia docelowe, tak by były zgodne z Androidem 2.1 (poziom API 7). Zobacz wersja 7 mediarouter
Interfejsy API biblioteki mediarouter v7 wprowadzone w Pomocy Biblioteka r18 może ulec zmianie w późniejszych wersjach Pomocy. Biblioteka. Obecnie zalecamy korzystanie z biblioteki tylko w połączeniu dzięki technologii Google Cast wersji deweloperskiej.
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano element
DrawerLayout
za utworzenie Nawigacja Szuflada, którą można wciągnąć z krawędzi okna. - Dodano widżet
SlidingPaneLayout
do tworzenia połączonych kont podglądach podsumowania i szczegółowych informacji, które dostosowują się do różnych rozmiarów ekranu. - Dodano element
ActionBarDrawerToggle
jako sposób wiązania połączone funkcjeDrawerLayout
iActionBar
. - Dodano
ViewDragHelper
jako nowy wspólny komponent do przeciągania widoków w widoku nadrzędnym. - Dodano interfejs
ScrollerCompat
, aby zapewnić obsługę zgodnościScroller
iOverScroller
. - Dodano
FileProvider
, aby umożliwić udostępnianie prywatnych zdjęć między aplikacjami. - Zaktualizowano zasadę
ViewPager
, aby zgłosić wyjątek, jeśli powiązana klasaPagerAdapter
została zmodyfikowana bez połączenie z numeremnotifyDataSetChanged()
. - Naprawiono problem z sortowaniem rysunków podrzędnych (
ViewPager
) zamówienie. - Naprawiono brakujący element zamówienia
GestureDetectorCompat
Połączenia:onSingleTapConfirmed(MotionEvent)
między czasem upłynięcia kliknięcia a przytrzymaniem.
- Dodano element
- Nowa biblioteka układów siatki w wersji 7:
-
- Dodano
GridLayout
, aby uzyskać wsparcie Obiekt układuGridLayout
. - Dodano
android.support.v7.widget.Space
, którego można używać do tworzenia pustych obszarów w obiekcie układuGridLayout
.
- Dodano
- Zmiany w bibliotece pomocy do wersji 4:
-
- Poprawiono zachowanie związane z interakcją w aplikacji
ViewPager
. - Naprawiliśmy błąd, który powodował, że
ViewPager
wybierał niewłaściwa strona. - Naprawiono użycie metody
removeView()
dla układu stronyViewPager
. - Rozwiązaliśmy problem z
SearchViewCompat
, w którym używanie przycisk Wstecz do zamknięcia nie powoduje wyczyszczenia wyszukiwanego tekstu. Ta poprawka dotyczy tylko interfejsu API hosta na poziomie 14 lub wyższym.
- Poprawiono zachowanie związane z interakcją w aplikacji
- Zmiany w bibliotece pomocy do wersji 4:
-
- Interfejs
- Dodano obsługę zagnieżdżonych klas
Fragment
. - Dodano ulepszenia do debugowania trybu
FragmentManager
. - Usunięto problem w
FragmentTabHost
, polegający na tym, że fragment i interakcja z kartą może spowodować utratę stanuListView
. - Rozwiązanie problemu z widoczną dla użytkownika wskazówką w
FragmentStatePagerAdapter
- Dodano
PageTransformer
interfejsuViewPager
, aby umożliwić aplikacjom pozwalają dostosować sposób przejścia w przypadku przewijania. - Dodano nowe funkcje i poprawki do aplikacji
TaskStackBuilder
w porównaniu z bieżącą wersją. - Naprawiono
PagerTitleStrip
, aby prawidłowo śledzićPagerAdapter
jest obecnie w użyciu. - Naprawiono problemy z migotaniem, pozycjonowaniem i przycinaniem tekstu w przypadku funkcji
PagerTitleStrip
- Poprawiono
PagerTabStrip
, aby zapewnić prawidłowe uwzględnianie dopełnienia. podczas rysowania.
- Dodano obsługę zagnieżdżonych klas
- Ułatwienia dostępu
- Dodano obsługę nowych gestów i kliknięć ułatwień dostępu w
AccessibilityEventCompat
- Dodaliśmy obsługę nowych interfejsów API ułatwień dostępu w
ViewCompat
- Do
ViewCompat
dodano obsługę metodyperformAccessibilityAction()
.
- Dodano obsługę nowych gestów i kliknięć ułatwień dostępu w
- Dodano obsługę gestów w
GestureDetectorCompat
. - Dodano obsługę wykonywania niepodzielnych operacji na plikach za pomocą
AtomicFile
zajęcia. - Dodano obsługę pełnego zestawu metod
make
wIntentCompat
- Dodano metodę
trimToSize()
w:LruCache
. - Zaktualizowano
ConnectivityManagerCompat
, aby uzyskać informacje o sieci z urządzeniaCONNECTIVITY_ACTION
transmisję.
- Interfejs
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodaliśmy obsługę funkcji powiadomień wprowadzonych w Androidzie 4.1 (poziom API 16) z
dodano do
NotificationCompat
.
- Dodaliśmy obsługę funkcji powiadomień wprowadzonych w Androidzie 4.1 (poziom API 16) z
dodano do
- Zmiany w bibliotece pomocy do wersji 4:
-
- Pomoc dotycząca interfejsu użytkownika
- Dodano obsługę
PagerTabStrip
, co zwiększa skuteczność funkcje wykraczające pozaPagerTitleStrip
. - Naprawiliśmy różne błędy w wersjach
PagerTitleStrip
iPagerTabStrip
, w tym opcjasetAllCaps
, wyrównanie tytułu, ulepszenia wyglądu, ograniczenia minimalnej szerokości i problemy z nawigacją dotykową. - Dodaliśmy obsługę rynien strony (
ViewPager
), pomaga klasieViewPager
obsługiwać stronicowanie treści z dużego poziomego zakresu przewijania, np. mapy. - Naprawiliśmy wiele błędów dotyczących zasobu
ViewPager
, w tym dotyczących rozmiaru problemy ze zmianą zbioru danych, pozycjonowanie strony, interakcja użytkownika, śledzenie przewijania i klawiatura problemy z nawigacją. - Naprawiliśmy wiele błędów dotyczących aplikacji
Fragment
, w tym prawidłowe obsługa poleceniaonActivityResult()
, gdy fragment docelowy już nie istnieje, wysyłanie zdarzeń wyboru do niewidocznych fragmentów, poprawione Działanie funkcjiFragmentTransaction.replace()
poprawiliśmy obsługę stanów w przypadku fragmentów usuwanych z widoku. - Dodano obsługę metody
postOnAnimation()
wViewCompat
. - Zaktualizowano
NavUtils
, aby korzystać z Androida 4.1 (poziom API 16) Funkcja nawigacji w górę, jeśli jest dostępna.
- Dodano obsługę
- Ułatwienia dostępu
- Zaktualizowaliśmy klasy pomocy dotyczące ułatwień dostępu, w tym
AccessibilityNodeInfoCompat
, aby dostosować je do poprawek wprowadzonych w Androidzie 4.1 (poziom interfejsu API 16). - Dodano obsługę czynności przewijania ułatwień dostępu w
ViewPager
.
- Zaktualizowaliśmy klasy pomocy dotyczące ułatwień dostępu, w tym
- Ogólne ulepszenia
- Zaktualizowano
TaskStackBuilder
, aby odzwierciedlić zmiany interfejsu API w Android 4.1 (poziom API 16). - Ulepszono
TaskStackBuilder
, aby można było go używać z Usługi. - Dodano obsługę języka
EXTRA_HTML_TEXT
do:ShareCompat
. - Zaktualizowano
NotificationCompat.Builder
, by obsługiwać MetodasetNumber()
. - Dodano obsługę języka
ConnectivityManagerCompat
dla: MetodaisActiveNetworkMetered()
.
- Zaktualizowano
- Pomoc dotycząca interfejsu użytkownika
- Zmiany w bibliotece pomocy do wersji 4:
-
- Poprawiono flagi intencji
PendingIntent
obiektu autor:TaskStackBuilder
. - Usunęliśmy nieużywane atrybuty z projektów biblioteki siatki, aby upewnić się, bibliotekę można utworzyć przy użyciu interfejsu API na poziomie 7 lub wyższym.
- Dodano pliki
.classpath
i.project
do układu siatki w projekcie bibliotecznym.
- Poprawiono flagi intencji
- Zmiany w bibliotece pomocy do wersji 4:
-
- Dodano klasę
ShareCompat
, która udostępnia klasy pomocnicze do wysyłania i odbierania treści w aplikacjach do udostępniania społecznościowego, w tym nowych metadanych przypisywanie udostępnionych danych do aplikacji źródłowej. Klasy te zapewniają także zgodną integrację zShareActionProvider
w Androidzie 4.0. - Dodano
NavUtils
iTaskStackBuilder
, aby pomóc w implementacji Wskazówki dotyczące nawigacji w narzędziu Android Design. Te między innymi można umieścić przycisk w górę na pasku działań. Żeby zobaczyć przykład implementacji tego wzorca, zobacz przykład AppNavigation w (<em><sdk></em>/samples/<em><platform></em>/AppNavigation
). - Dodano
NotificationCompat.Builder
, aby podać implementacja klasy pomocniczejNotification.Builder
w Androidzie 3.0 do tworzenia ustandaryzowanych powiadomień systemowych.
- Dodano klasę
- Zmiany w bibliotece pomocy do wersji 4:
-
- Zmiany w funkcji ViewPager:
- Dodano dodatkową obsługę widoku dekoracyjnego w
ViewPager
. Widoki dekoracyjne mogą być dostarczane jako widoki podrzędne pagera w układzie XML. - Dodano
PagerAdapter.getPageTitle()
do podawania ciągów tytułów stron. Domyślna wartość to „nie” tytuł każdej strony. - Dodano nieinteraktywny tytuł
PagerTitleStrip
który można dodać jako element podrzędny elementu ViewPager. Deweloperzy mogą dodawać tekst wygląd i kolorystykę, a także rozmiar układu i informacje o grawitacji. - Zaktualizowano
PagerAdapter
metody przechwytywania ViewGroup obiektów, a nie View, aby uniknąć przesyłania klas w implementacjach adaptera. - Zaktualizowano aplikację
ViewPager
, aby korzystała z funkcji jak w Menu z aplikacjami w scenie. - Poprawki błędów związanych z interakcją z interfejsem i automatyzacją testów.
- Dodano dodatkową obsługę widoku dekoracyjnego w
- Obsługa fragmentów:
- Zmieniono metodę
setStartDeferred()
nasetUserVisibleHint(boolean)
. - Dodaliśmy odroczony start w przypadku stron poza ekranem, aby zwiększyć wydajność.
- Zmieniono metodę
- Obsługa interfejsów Accessibility API:
- Zaktualizowano
AccessibilityDelegateCompat
metody zwraca puste listy zamiast wartości null. - Dodano nowe interfejsy API wymagane przez przykłady w wersji 4.
- Zaktualizowano
- Zmiany w funkcji ViewPager:
- Zmiany w bibliotece pomocy do wersji 4:
-
- Obsługa interfejsów Accessibility API:
- Dodano
AccessibilityDelegateCompat
aby obsługiwaćView.AccessibilityDelegate
. - Dodano
AccessibilityEventCompat
aby obsługiwaćAccessibilityEvent
. - Dodano
AccessibilityManagerCompat
aby obsługiwaćAccessibilityManager
. - Dodano
AccessibilityNodeInfoCompat
aby obsługiwaćAccessibilityNodeInfo
. - Dodano
AccessibilityRecordCompat
aby obsługiwaćAccessibilityRecord
. - Dodano
AccessibilityServiceInfoCompat
aby obsługiwaćAccessibilityServiceInfo
. - Dodano
ViewGroupCompat
aby obsługiwać ułatwienia dostępu w usłudzeViewGroup
. - Zmodyfikowano
ViewCompat
aby obsługiwać ułatwienia dostępu w usłudzeView
.
- Dodano
- Zmiany w funkcji ViewPager:
- Dodano obsługę marginesów między stronami.
Możesz podać opcjonalny element
Drawable
aby wypełnić marginesy. - Dodano obsługę języka
EdgeEffect
. - Dodano obsługę nawigacji za pomocą klawiatury
- Dodano obsługę kontrolowania liczby stron wyświetlanych po obu stronach. bieżącej strony.
- Ulepszona fizyka dotyku.
- Poprawki błędów dotyczących działania interfejsu.
- Dodano obsługę marginesów między stronami.
Możesz podać opcjonalny element
- Obsługa interfejsów Accessibility API:
- Zmiany w bibliotece pomocy do wersji 4:
-
- Użytkownik
EdgeEffectCompat
został dodany do listy ObsługujEdgeEffect
. - Dodano
LocalBroadcastManager
, aby ułatwić aplikacjom rejestrować i odbierać intencje w ramach jednej aplikacji bez i udostępnia je na całym świecie. - W grze
ViewCompat
dodano obsługę sprawdzania i ustawiania dalekiego przewijania w systemachView
na Androidzie 2.3 i nowszych. - Zmiany w interfejsach API Fragment:
- Dodaliśmy nowe interfejsy API do kontrolowania widoczności nowych menu.
- Dodano interfejsy API do animacji niestandardowych.
- Dodano interfejsy API w
FragmentActivity
, aby zachować niestandardowe, danych instancji innych niż konfiguracja. - Poprawki różnych błędów.
- Naprawiliśmy błąd (
Loader
), który powodował problemy w anulowanieAsyncTask
s w przypadku uruchomienia w Froyo i starszych do obsługi różnych wersji platformy. Zespół pomocy kod korzysta teraz z własnej wersji atrybutuAsyncTask
, aby zachować na wszystkich wersjach platformy.
- Użytkownik
- Zmiany w bibliotece pomocy do wersji 4:
-
- Obsługuje pole
Fragment.SavedState
- Dodaje
MotionEventCompat
, aby obsługiwać nowsze interfejsy APIMotionEvent
- Dodaje
VelocityTrackerCompat
, aby obsługiwać nowsze interfejsy APIVelocityTracker
- Dodaje
ViewConfigurationCompat
, aby obsługiwać nowsze interfejsy APIViewConfiguration
- Wszystkie nowe interfejsy API (dostępne tylko w bibliotece pomocy), które umożliwiają tworzenie UI
z podziałem na strony w poziomie, który umożliwia przewijanie zawartości w lewo i w prawo. Zajęcia dla
obsługują m.in.:
ViewPager
:ViewGroup
, który zarządza układ dla widoków podrzędnych, między którymi użytkownik może przesuwać palcem.PagerAdapter
: adapter, który wypełniaViewPager
wartością wyświetlenia, które reprezentują każdą stronę.FragmentPagerAdapter
: rozszerzeniePagerAdapter
do odwracania między fragmentami.FragmentStatePagerAdapter
: rozszerzeniePagerAdapter
dla domeny przełączanie fragmentów, które korzystają z obsługiFragment.SavedState
w bibliotece.
- Obsługuje pole
- Nowa biblioteka pomocy do wersji 13:
-
- W tym
FragmentPagerAdapter
iFragmentStatePagerAdapter
do obsługi stronicowania w poziomie.Są one dokładnie takie same jak interfejsy API dodane do biblioteki pomocy dla wersji 4, ale opierają się innych składników platformy w Androidzie 3.2. Używaj tej biblioteki zamiast wersji 4, jeśli tworzysz Android 3.2 i nowsze (wszystkie pozostałe interfejsy API w bibliotece v4 są już dostępne na poziomie API) 13)
- W tym
- Zmiany w bibliotece w wersji 4:
-
- Obsługa animacji fragmentów
- Rozwiąż problem z kartą
Fragment.onActivityResult()
robak
Wersja 22
Marzec 2015 r.
Wersja 21.0.3
Grudzień 2014
Wersja 21.0.2
listopadzie 2014 r.
Wersja 21.0.1
listopadzie 2014 r.
Wersja 21
Październik 2014
Wersja 20
Lipiec 2014
Wersja 19.1.0
Marzec 2014
Wersja 19.0.1
Grudzień 2013 r.
Wersja 19
Październik 2013
Wersja 18
Lipiec 2013
Wersja 13
Maj 2013 r.
Wersja 12
Luty 2013
Wersja 11
Listopad 2012
Wersja 10
Sierpień 2012
Wersja 9
Czerwiec 2012
Wersja 8
Kwiecień 2012
Wersja 7
Marzec 2012 r.
Wersja 6
Grudzień 2011
Uwaga: odniesienia do interfejsów API biblioteki pomocy są teraz dostępne w:
odwołują się do platformy, na przykład: android.support.v4.app
.
Wersja 5
Grudzień 2011
Wersja 4
Październik 2011
Wersja 3
Lipiec 2011
Wersja 2
Maj 2011
Wersja 1
Marzec 2011 r.
Pierwsza wersja z biblioteką w wersji 4.