Jaka jest różnica między android.app.Fragment
i android.support.v4.app.Fragment
oraz w jakich okolicznościach należy ich używać?
źródło
Jaka jest różnica między android.app.Fragment
i android.support.v4.app.Fragment
oraz w jakich okolicznościach należy ich używać?
android.support.v4.app.Fragment
to klasa Fragment w bibliotece obsługi systemu Android, która jest pakietem kompatybilności, który umożliwia korzystanie z niektórych nowszych funkcji Androida na starszych wersjach Androida.
android.app.Fragment
to klasa Fragment w natywnej wersji zestawu Android SDK. Został wprowadzony w systemie Android 3 (API 11).
Jeśli chcesz, aby Twoja aplikacja korzystała z fragmentów i chcesz kierować reklamy na urządzenia starsze niż API 11, musisz użyć android.support.v4.app.Fragment
. Jeśli jednak kierujesz reklamy tylko na urządzenia z interfejsem API 11 lub nowszym, możesz użyć android.app.Fragment
.
Edycja: zawarty w systemie system operacyjny android.app.Fragment
jest teraz przestarzały (od poziomu 28 interfejsu API) i wszyscy powinni przejść do korzystania z implementacji bibliotek obsługi.
Od 2018 roku:
Z
android.app.Fragment
dokumentacji :Dlatego fragmenty wsparcia (
android.support.v4.app.Fragment
) powinny być teraz używane wszędzie zamiast natywnych fragmentów (android.app.Fragment
).źródło
android.app.Fragment
klasa zostanie wycofana, ten poziom API 28 będzie miał alternatywne, prawdopodobnie radykalne podejście zastępcze. Czy istnieje podejście naprzód, czy też jest ono kompatybilne wstecz,android.support.v4.app.Fragment
właściwe podejście?Używam
android.support.v4.app.Fragment
wyłącznie.Wszystkie aplikacje, które piszę, muszą obsługiwać od razu Androida 2.3 i jest to najłatwiejszy sposób na zrobienie tego.
Jeśli wspierasz 11+, trzymaj się
android.app.Fragment
.źródło
Jeśli Twoja aplikacja jest przeznaczona dla interfejsu API 11 lub nowszego, możesz użyć,
android.app.Fragment
a plik APK będzie mniejszy.W przeciwnym razie dodaj
android.support.v4.app.Fragment
bibliotekę do projektu, aby obsługiwać starsze wersje Android API (Android 3.x).źródło
android.support.v4.app.Fragment
to biblioteka, której możesz użyć, aby uzyskać zgodność wsteczną ze starszymi wersjami API.Fragmenty zostały dodane na poziomie API 11 (wraz z innymi funkcjami), należy dołączyć tę bibliotekę, aby rozszerzyć te funkcje na urządzenia starsze niż API 11. Jest to przydatna biblioteka i proponuję przyjrzeć się ActionBarSherlock, który rozszerza pasek akcji na urządzenia starsze niż API v11.
źródło
Jeśli Twoja aplikacja jest przeznaczona na poziom API 11 lub wyższy, możesz użyć android.app.Fragment i zmniejszy to rozmiar pliku APK. W przeciwnym razie użyj android.support.v4.app.Fragment
źródło