Elementy wycofane

Wraz z każdą nową wersją niektóre interfejsy API Androida mogą stać się przestarzałe lub wymagać przebudowy, aby zapewnić lepsze wrażenia deweloperom lub obsługiwać nowe funkcje platformy. W takich przypadkach Android oficjalnie wycofa przestarzałe interfejsy API i przekieruje deweloperów na nowe interfejsy API.

Oznacza to, że zakończyliśmy oficjalne wsparcie interfejsów API, ale nadal będą one dostępne dla deweloperów. Na tej stronie znajdziesz informacje o niektórych wycofanych funkcjach w tej wersji Androida. Aby zobaczyć inne wycofane interfejsy API, zapoznaj się z raportami o różnicach interfejsów API.

RenderScript

Od Androida 12 interfejsy RenderScript API są wycofane. Nadal będą działać, ale spodziewamy się, że producenci urządzeń i komponentów z czasem przestaną obsługiwać akcelerację sprzętową. Aby w pełni korzystać z przyspieszania przez procesor graficzny, zalecamy przejście z RenderScript.

Playlisty na Androidzie

Playlisty na Androida zostały wycofane. Interfejs API nie jest już aktualizowany, ale jego obecna funkcjonalność jest nadal dostępna ze względu na zgodność wsteczną.

Zalecamy odczytywanie i zapisywanie playlist jako plików m3u.

Wycofanie Display API

Urządzenia z Androidem są dostępne w różnych formatach, takich jak duże ekrany, tablety i urządzenia składane. Aby prawidłowo renderować treści na poszczególnych urządzeniach, aplikacja musi określić rozmiar ekranu lub wyświetlacza. Z czasem Android udostępniał różne interfejsy API do pobierania tych informacji. W Androidzie 11 wprowadziliśmy interfejs API WindowMetrics i wycofaliśmy te metody:

W Androidzie 12 nadal zalecamy używanie WindowMetrics, a te metody są wycofywane:

Aplikacje powinny używać interfejsów API WindowMetrics, aby zapytać o granice okna, lub Configuration.densityDpi, aby zapytać o bieżącą gęstość.

Pamiętaj, że biblioteka Jetpack WindowManager zawiera klasę WindowMetrics, która obsługuje Androida 4.0.1 (poziom interfejsu API 14) i nowsze.

Przykłady

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

Najpierw sprawdź, czy w Twojej aplikacji można w pełni zmieniać rozmiar aktywności.

Aktywność powinna korzystać z elementu WindowMetrics z kontekstu aktywności do wykonywania wszelkich działań związanych z interfejsem użytkownika, w szczególności z elementu WindowManager.getCurrentWindowMetrics().

Jeśli Twoja aplikacja tworzy MediaProjection, jej granice muszą mieć prawidłowy rozmiar, ponieważ projekcja obejmuje wyświetlacz. Jeśli aplikacja jest w pełni skalowalna, kontekst aktywności zwraca prawidłowe granice.

Kotlin

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

Java

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

Jeśli aplikacja nie może być w pełni zmieniać rozmiaru, musi zapytać o granice instancji WindowContext i pobrać dane WindowMetrics dotyczące maksymalnej dostępnej dla aplikacji powierzchni wyświetlania, używając do tego 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();