Elementy wycofane

W każdej wersji określone interfejsy API Androida mogą stać się przestarzałe lub wymagać refaktoryzowanych, aby zapewnić lepsze wrażenia programistów lub zapewnić obsługę nowej platformy; funkcje zabezpieczeń. W takich przypadkach Android oficjalnie wycofa przestarzałe interfejsów API i kierować programistów do nowych interfejsów API w ich zamianie.

Wycofanie oznacza, że zakończyliśmy oficjalną obsługę interfejsów API, ale będą nadal dostępne dla deweloperów. Na tej stronie omawiamy niektóre wycofane funkcje w tej wersji Androida. Aby zobaczyć inne wycofane funkcje, zapoznaj się z Raport Różnice między interfejsami API.

RenderScript

W Androidzie 12 interfejsy RenderScript API są wycofywane. Będą nadal będą działać, jednak spodziewamy się, że producenci urządzeń i komponentów nie będą już obsługiwane. Aby w pełni wykorzystać możliwości przyspieszenia GPU, zalecamy przejście na rezygnację z RenderScriptu.

Playlisty na Androidzie

Playlisty na Androidzie: wycofane. Interfejs API nie jest już obsługiwany, ale obecne funkcje .

Zalecamy odczytywanie i zapisywanie playlist jako m3u .

Wycofanie interfejsu Display API

Urządzenia z Androidem są obecnie dostępne w wielu różnych formatach, takich jak: dużych ekranów, tabletów i urządzeń składanych. Aby odpowiednio renderować treści każdego urządzenia, aplikacja musi określić rozmiar ekranu lub wyświetlacza. Ponad Android udostępniał różne interfejsy API do pobierania tych informacji. W Android 11, który wprowadziliśmy Interfejs WindowMetrics API został wycofany te metody:

W Androidzie 12 nadal zalecamy korzystanie z WindowMetrics oraz wycofujemy te metody:

Aplikacje powinny używać interfejsów API WindowMetrics, aby wysyłać zapytania dotyczące granic swojego okna lub Configuration.densityDpi. , aby wysłać zapytanie o obecną gęstość.

Pamiętaj, że Jetpack WindowManager biblioteka zawiera WindowMetrics klasy obsługującej Androida 4.0.1 (poziom interfejsu API 14) i nowszego.

Przykłady

Oto kilka przykładów użycia atrybutu WindowMetrics.

Najpierw upewnij się, że aplikacja może udostępniać z możliwością pełnej zmiany rozmiaru.

Aktywność powinna wykorzystywać atrybut WindowMetrics z kontekstu aktywności: wszelkie prace związane z interfejsem użytkownika, WindowManager.getCurrentWindowMetrics()

Jeśli aplikacja tworzy MediaProjection, progi muszą mieć odpowiedni rozmiar ponieważ w ramach projekcji jest rejestrowany obraz. Jeśli można w pełni zmienić rozmiar aplikacji, funkcja zwraca prawidłowe granice.

Kotlin

val projectionMetrics = activityContext
        .getSystemService(WindowManager::class.java).maximumWindowMetrics

Java

WindowMetrics projectionMetrics = activityContext
        .getSystemService(WindowManager.class).getMaximumWindowMetrics();

Jeśli aplikacji nie można w pełni zmienić rozmiaru, musi przesłać zapytanie do granic WindowContext i pobierz WindowMetrics maksimum dostępnego dla aplikacji przy użyciu WindowManager.getMaximumWindowMetrics().

Kotlin

val windowContext = context.createWindowContext(mContext.display!!,
      WindowManager.LayoutParams.TYPE_APPLICATION, null)
val projectionMetrics = windowContext.getSystemService(WindowManager::class.java)
      .maximumWindowMetrics

Java

Context windowContext = mContext.createWindowContext(mContext.getDisplay(),
      WindowManager.LayoutParams.TYPE_APPLICATION, null;
WindowMetrics projectionMetrics = windowContext.getWindowManager()
      .getMaximumWindowMetrics();