Android 13 wprowadza programistów – świetne nowe funkcje i interfejsy API. Sekcje poniżej znajdziesz informacje o funkcjach dostępnych w Twoich aplikacjach i rozpoczęcie korzystania z powiązanych interfejsów API.
Szczegółową listę nowych, zmodyfikowanych i usuniętych interfejsów API znajdziesz w Raport Różnice między interfejsami API. Szczegółowe informacje o nowych interfejsach API znajdziesz w dokumentacji interfejsu Android API. widoczność. Aby dowiedzieć się więcej o obszarach, w których zmiany na platformie mogą wpływają na działanie aplikacji, zapoznaj się ze zmianami w działaniu Androida 13 kierowane na Androida 13 oraz wszystkich użytkowników aplikacji.
Produktywność i narzędzia programistów
Ikony aplikacji zgodne z wybranym motywem
Od Androida 13 możesz włączyć ikony aplikacji z motywem. W związku z tym , ikony aplikacji w obsługiwanych programach uruchamiających Androida mają podbarwienie, by dziedziczyć wybranej przez użytkownika tapety i innych motywów.
Aby można było korzystać z tej funkcji, aplikacja musi mieć
ikonę adaptacyjną i
monochromatycznej ikony aplikacji i wskaż monochromatyczną ikonę aplikacji
<adaptive-icon>
element w pliku manifestu. Jeśli użytkownik włączył aplikację z motywem
(czyli włączenie przełącznika Ikony z motywem w ustawieniach systemowych),
a program uruchamiający obsługuje tę funkcję, system używa kolorów
wybraną przez użytkownika tapetę i motyw, aby określić kolor odcienia,
dotyczy monochromatycznej ikony aplikacji.
Na ekranie głównym NIE wyświetla się ikona aplikacji z motywem adaptacyjną lub standardową ikonę aplikacji w tych sytuacjach:
- Jeśli użytkownik nie włączył ikon aplikacji z motywem
- Jeśli aplikacja nie ma monochromatycznej ikony
- Jeśli launcher nie obsługuje ikon aplikacji z motywem
Więcej informacji i instrukcje znajdziesz w artykule Ikony adaptacyjne.
Wybór języka według aplikacji
W wielu przypadkach użytkownicy wielojęzyczni ustawiają język systemu na jeden język – jak angielski, ale chcą wybrać inne języki dla konkretnych aplikacji, niderlandzki, chiński lub hindi. Aby zwiększyć wygodę korzystania z aplikacji użytkowników, Android 13 wprowadza te funkcje w przypadku aplikacji obsługujących wiele języków:
Ustawienia systemu: scentralizowane miejsce, w którym użytkownicy mogą wybrać preferowanego języka dla każdej aplikacji.
Aplikacja musi zadeklarować atrybut
android:localeConfig
w taguandroid:localeConfig
manifestu, aby poinformować system, że obsługuje on wiele języków. Aby się uczyć więcej, zapoznaj się z instrukcjami dla utworzyć plik zasobów i zadeklarować go w pliku manifestu aplikacji.Dodatkowe interfejsy API: publiczne interfejsy API, takie jak
setApplicationLocales()
. orazgetApplicationLocales()
. wLocaleManager
, zezwól aplikacjom ustawić w czasie działania inny język niż język systemu.Te interfejsy API są automatycznie synchronizowane z ustawieniami systemowymi. dlatego aplikacje korzystające z tych interfejsów API do tworzenia niestandardowych selektorów języka że użytkownicy mają takie same wrażenia niezależnie od tego, co wybiorą swoje ustawienia językowe. Publiczne interfejsy API pomagają również bazują na stałym kodzie, obsługują dzielone pakiety APK Automatyczna kopia zapasowa aplikacji na poziomie aplikacji ustawień języka.
Aby zapewnić zgodność wsteczną z poprzednimi wersjami Androida, odpowiednie interfejsy API są też dostępne na Androidzie X. Zalecamy użycie interfejsy API dodano w Appcompat 1.6.0-beta01. lub wyższą.
Te zmiany nie dotyczą aplikacji, które nie obsługują wielu języków.
Ulepszona obsługa tekstu i języków
Android 13 ma kilka funkcji, które poprawiają tekst i język aby poprawić jakość obsługi, co opisano w tych sekcjach:
Szybsze dzielenie się łącznikami
Dzielenie się łącznikami ułatwia czytanie opakowanego tekstu i ułatwia korzystanie z interfejsu.
adaptacyjną. Począwszy od Androida 13 działanie łączników jest optymalizowane przez
nawet 200%, więc możesz włączyć ją w: TextView
. Nie ma to niemal żadnego wpływu na
wydajność renderowania. Aby włączyć szybsze dzielenie, użyj
fullFast
lub
normalFast
częstotliwości w
setHyphenationFrequency()
.
Interfejsy API konwersji tekstowych
Osoby posługujące się językami takimi jak japoński i chiński używają liter fonetycznych metody wprowadzania, które często spowalniają wyszukiwanie i spowalniają działanie takich funkcji jak do końca. W Androidzie 13 aplikacje mogą wywoływać nową konwersję tekstową API, aby użytkownicy mogli znaleźć aby szybciej i łatwiej je znaleźć. Wcześniej, na przykład wyszukiwanie, użytkownik z Japonii musi wykonać te czynności:
- Wprowadź alfabet hiragana jako fonetyczną wymowę wyszukiwanego hasła (np. miejsce lub nazwa aplikacji)
- Za pomocą klawiatury możesz przekonwertować znaki hiragana na kanji
- Wyszukiwanie przy użyciu znaków kanji
- Na koniec sprawdź wyniki wyszukiwania
Dzięki nowemu interfejsowi API do konwersji tekstu użytkownicy w Japonii mogą pisać w języku Hiragana, natychmiast pojawią się wyniki wyszukiwania kanji, z pominięciem kroków 2 i 3.
Poprawione wysokości wierszy w alfabetach innych niż łacińskie
Android 13 poprawia wyświetlanie alfabetu niełacińskiego (np. języka tamilskiego, birmańskiego, telugu i tybetańskiego) dzięki użyciu wysokości wiersza, która została dostosowana do poszczególnych języków. Nowe wysokości wierszy zapobiegają obcinaniu tekstu i poprawiają rozmieszczenie znaków. Twoja aplikacja może korzystać z tych ulepszeń, jeśli jest kierowana na Androida 13. Przetestuj swoje aplikacje, jeśli używasz nowych odstępów między wierszami, bo zmiany może wpływać na interfejs w językach opartych na alfabecie innym niż łaciński.
Ulepszone zawijanie tekstu w języku japońskim
Począwszy od Androida 13 obiekty TextView mogą zawijać tekst przy użyciu Bunsetsu (najmniejszej jednostki słów, która brzmi
naturalne) lub wyrażenia, a nie po znakach, aby były bardziej dopracowane i czytelne
japońskie aplikacje. Możesz z niego skorzystać, używając parametru
android:lineBreakWordStyle="phrase"
dzięki obiektom TextView.
Aktualizacje biblioteki Unicode
Android 13 dodaje najnowsze ulepszenia, poprawki i zmiany Unicode ICU 70, Unicode CLDR 40 i Unicode 14.0.
Oto kilka ważnych zmian:
- angielski (Kanada)
en‑CA
i angielski (Republika Filipiny)en‑PH
używają języka angielskiego (USA)en
zasoby tłumaczeniowe, gdy nie są dostępne zasoby tłumaczeniowe zamiast angielskiego (Wielka Brytania)en‑GB
. - Kategoria liczby mnogiej
many
została wprowadzona dla hiszpańskich (es
) i włoskich (it
), Portugalskipt
i portugalski (Portugalia)pt‑PT
. Podobna na język francuski wprowadzony w CLDR w wersji 38, a w przypadku dużych liczb.
Czcionki kolorów wektorowych
Począwszy od Androida 13 system zawiera obsługę renderowania COLR w wersji 1. (COLRv1) tworzy czcionki i aktualizuje emotikony systemowe do formatu COLRv1. COLRv1 to kompaktowy, wyrazisty format czcionki, który renderuje się szybko i wyraźnie w dowolnym rozmiarze.
W przypadku większości aplikacji system obsługuje wszystko, a COLRv1 po prostu działa. Pamiętaj jednak: jeśli aplikacja ma własne renderowanie tekstu i korzysta z czcionek systemowych, zalecamy przetestowanie renderowania emotikonów.
Więcej informacji o COLRv1 znajdziesz w tych materiałach:
- Ogłoszenie na blogu dla deweloperów Chrome
- Dostawa kolorowych czcionek wektorowych COLRv1 w Chrome (film)
- Specyfikacja tabeli COLR
Interfejs API rozmieszczania Szybkich ustawień
Szybkie ustawienia w obszarze powiadomień to wygodny sposób na zmianę ustawień aplikacji lub wykonywania szybkich działań bez wychodzenia z kontekstu aplikacji. Aplikacje które udostępniają niestandardowe kafelki, ułatwiamy użytkownikom znajdowanie i dodawanie kafelków do karty Szybkie Ustawienia. Korzystanie z nowego tileplacement API, aplikacja może teraz prosić użytkownika o bezpośrednie dodanie niestandardowego kafelka do zestaw aktywnych kafelków Szybkich ustawień. W nowym oknie systemowym użytkownik może dodać w jednym kroku, bez wychodzenia z aplikacji, bez konieczności przechodzenia do Ustawienia, aby dodać kafelek.
Podgląd schowka
Od Androida 13 system wyświetla standardowe potwierdzenie wizualne, gdy: treść zostanie dodana do schowka. Nowe potwierdzenie wygląda tak:
- Potwierdza, że treść została skopiowana.
- Udostępnia podgląd skopiowanej treści.
Ta funkcja ustandaryzuje różne powiadomienia wyświetlane przez aplikacje po skopiowaniu i zapewnia użytkownikom większą kontrolę nad schowek. Dodatkowe informacje znajdziesz zapoznaj się z funkcją Kopiuj i wklej stronę.
Gest przewidywania
Android 13 wprowadza gest przewidywania gestu cofania na urządzeniach z Androidem, takich jak: telefonach, dużych ekranach i urządzeniach składanych. Obsługa tej funkcji wymaga: zaktualizować aplikację.
Szczegółową dokumentację znajdziesz w artykule Aktualizowanie aplikacji na potrzeby obsługi prognozowanego wstecznego gest. Możesz też spróbować znajdziesz w naszych ćwiczeniach z programowania.
Bluetooth LE Audio
Low Energy (LE) Audio to bezprzewodowy dźwięk zaprojektowany, aby zastąpić klasycznego Bluetootha i włącz określone przypadki użycia oraz topologie połączeń. it umożliwia użytkownikom udostępnianie i przesyłanie dźwięku znajomym i rodzinie lub subskrybować publiczne transmisje informacyjne i rozrywkowe lub związane z ułatwieniami dostępu; Dzięki niemu użytkownicy mogą odbierać dźwięk wysokiej jakości bez mniej pracy na baterii i płynne przełączanie między użytkowaniem są niedostępne w klasycznej wersji Bluetooth. Począwszy od Androida 13 ma wbudowaną obsługę technologii LE Audio. na zgodnych urządzeniach.
MIDI 2.0
Począwszy od Androida 13 system zawiera obsługę standardu MIDI 2.0, np. możliwość podłączenia sprzętu MIDI 2.0 przez USB. Ten standard oferuje funkcje, takie jak większa rozdzielczość kontrolerów, lepsza obsługa nie będzie totonacja zachodnia i bardziej wyrazista muzyka dzięki zastosowaniu poszczególnych nut. i kontrolerach.
Ulepszony ekran powitalny
Android 13 poprawia działanie animowanych ekranów powitalnych w aplikacji Splash Interfejs Screen API:
System określa czas trwania animacji bezpośrednio na podstawie wartości parametru
AnimatedVectorDrawable
Przed Androidem 13 trzeba było skonfigurowaćwindowSplashScreenAnimationDuration
.Używaj nowego atrybutu
windowSplashScreenBehavior
, aby mieć większą kontrolę nad Czy aplikacja na Androidzie 13 zawsze wyświetla ikonę na ekranie powitalnym i wyższe.
Szczegółowe informacje znajdziesz w sekcji Ekrany powitalne.
Optymalizacja reklam ART
W Androidzie 13 (poziom interfejsu API 33) i nowszych ART umożliwia przełączanie się między trybami natywnymi
kodowanie znacznie szybciej – połączenia JNI są teraz nawet 2, 5 razy szybsze. Dokumentacja środowiska wykonawczego
Przetwarzanie danych także zostało zmienione tak, aby w większości nie blokować ruchu,
mniej bałaganu. Ponadto możesz użyć parametru
Reference.refersTo()
publicznego interfejsu API, aby szybciej odzyskać nieosiągalne obiekty.
Tłumacz jest teraz szybszy dzięki zoptymalizowanemu wyszukiwaniu klas i metod. ART również
przeprowadza większą weryfikację przy użyciu kodu bajtowego podczas instalacji, co pozwala uniknąć
weryfikacji w czasie działania i szybkiego uruchomienia aplikacji.
Prywatność i bezpieczeństwo
Bezpieczniejsze eksportowanie odbiorców zarejestrowanych kontekstowo
Aby zwiększyć bezpieczeństwo odbiorników środowiska wykonawczego, w Androidzie 13 wprowadzamy możliwość określenia przez aplikację, czy zarejestrowany odbiornik powinny zostać wyeksportowane i widoczne dla innych aplikacji na urządzeniu. W poprzednich wersjach Androida, każda aplikacja na urządzeniu może wysłać niechronioną wiadomość do dynamicznie zarejestrowany adresat, chyba że był on strzeżony uprawnienia do podpisania.
Ta konfiguracja eksportowania jest dostępna w aplikacjach, które wykonują co najmniej jedną z :
- Korzystanie z
ContextCompat
klasy z wersji 1.9.0 lub nowszej Biblioteka AndroidX Core. - Kieruj reklamy na Androida 13 lub nowszego.
Selektor zdjęć
Android 13 (poziom API 33) i nowszy zawiera: selektor zdjęć i uzyskiwanie dodatkowych informacji. Po uruchomieniu aplikacji selektor zdjęć, użytkownicy wybierają określone obrazy i filmy do udostępnienia w aplikacji, np. zdjęć profilowych, zamiast udostępniać aplikacji biblioteki multimediów. Jest to zalecany sposób uzyskiwania dostępu do zdjęć i zdjęć użytkownika filmy.
Selektor zdjęć zapewnia użytkownikom większą prywatność, ponieważ Twoja aplikacja zadeklarować uprawnienia w czasie działania. Selektor zdjęć pozwala też z wbudowanym, ustandaryzowanym interfejsem aplikacji, i uzyskiwanie dodatkowych informacji.
Nowe uprawnienia w czasie działania dla urządzeń Wi-Fi w pobliżu
Android 13 (poziom API 33) wprowadza
uprawnienia środowiska wykonawczego
Grupa uprawnień NEARBY_DEVICES
dla aplikacji, które zarządzają połączeniami urządzenia z
pobliskich punktów dostępu przez Wi-Fi. Aplikacje te muszą zadeklarować nowe uprawnienia.
NEARBY_WIFI_DEVICES
kiedy
wywołania kilku różnych interfejsów API Wi-Fi.
Ponadto, o ile aplikacje nie określają fizycznej lokalizacji użytkownika z sieci Wi-Fi
API, nie muszą deklarować
ACCESS_FINE_LOCATION
gdy są kierowane na Androida 13 lub nowszego.
Dowiedz się więcej o uprawnienia dostępu do urządzeń Wi-Fi w pobliżu.
Nowe uprawnienia do używania alarmów precyzyjnych
Jeśli Twoja aplikacja jest kierowana na Androida 13 lub nowszego, możesz użyć
USE_EXACT_ALARM
które jest automatycznie przyznawane Twojej aplikacji. Aby aplikacja
nie korzysta z tego uprawnienia, jednak musi spełniać co najmniej 1 z tych warunków
kryteria:
- Aplikacja to budzik lub minutnik.
- Twoja aplikacja to aplikacja kalendarza, która wyświetla powiadomienia o nadchodzących wydarzeniach.
Jeśli aplikacja ustawia alarmy precyzyjne, ale nie spełnia warunków podanych na
poprzedniej listy, kontynuuj deklarowanie
SCHEDULE_EXACT_ALARM
i przygotuj się na sytuację, w której użytkownik odmówi zgody,
dostępu do aplikacji.
Uprawnienia dewelopera, które można zmniejszyć
Od Androida 13 aplikacja może unieważniać dostęp do nieużywanych aplikacji uprawnienia czasu działania. Ten interfejs API umożliwia aplikacji wykonywanie tych działań zwiększających prywatność, takich jak:
- Usuń nieużywane uprawnienia.
- Stosuj sprawdzone metody dotyczące uprawnień, aby zwiększyć zaufanie użytkowników. Więcej informacji wyświetlić użytkownikom okno z Twoimi uprawnieniami, odwołane bezterminowo.
Schemat podpisu APK w wersji 3.1
Android 13 obsługuje schemat podpisu plików APK w wersji 3.1, ulepsza istniejące Schemat podpisu pliku APK w wersji 3. Ten schemat rozwiązano niektóre znane problemy ze schematem podpisu plików APK w wersji 3 dotyczącym rotacji. Przede wszystkim wersja 3.1 schemat podpisu obsługuje kierowanie na wersję pakietu SDK, co umożliwia rotację do kierować reklamy na nowszą wersję platformy.
Schemat podpisu w wersji 3.1 wykorzystuje identyfikator bloku, który nie jest rozpoznawany 12 l lub mniej. Dlatego platforma stosuje to zachowanie osoby podpisującej:
- Urządzenia z Androidem 13 lub nowszym używają obróconego sygnatariusza w wersji 3.1.
- Urządzenia ze starszymi wersjami Androida ignorują obracający się sygnatariusz. zamiast tego użyj oryginalnego sygnatariusza w bloku wersji 3.0.
Aplikacje, w których nie została jeszcze poddana rotacja klucza podpisywania, nie wymagają dodatkowych działania. Za każdym razem, gdy te aplikacje zdecydują się przeprowadzić rotację, system stosuje wersję 3.1 schemat podpisu.
Aplikacje, które zostały już poddane rotacji i chcą nadal korzystać z tej rotacji
w bloku podpisywania wersji 3.0 muszą zaktualizować swoje
apksigner
wywołanie:
apksigner sign --ks keystore.jks | --key key.pk8 --cert cert.x509.pem --rotation-min-sdk-version API_LEVEL [signer_options] app-name.apk
...gdzie API_LEVEL
wynosi 32 lub mniej.
Lepsze raportowanie błędów w magazynie kluczy i Mint
W przypadku aplikacji generujących klucze Magazyn kluczy i KeyMint udostępniają teraz bardziej szczegółowe i szczegółowe
wskaźniki błędów. Dodaliśmy hierarchię klas wyjątków w
java.security.ProviderException
z wyjątkami związanymi z Androidem, które obejmują
Kody błędów Keystore/KeyMint,
oraz czy można spróbować ponownie. Możesz też modyfikować metody dla klucza
generowanie i wykorzystywanie (podpisywanie, szyfrowanie) do zgłaszania nowych wyjątków.
lepsze raportowanie błędów nie ogranicza się tylko do generowania kluczy
czego potrzebujesz, aby spróbować ponownie wygenerować klucz.
Obsługa tabletów i dużych ekranów
Android 13 opiera się na optymalizacji dotyczących tabletów wprowadzone w Androidzie 12 oraz 12 l nowych funkcji – w tym optymalizacje interfejsu systemu, usprawnienia wielozadaniowości, i ulepszone tryby zgodności. W ramach testowania upewnij się, że Twoje aplikacje na tabletach i innych urządzeniach z dużym ekranem.
Więcej informacji o nowościach i elementach do testowania znajdziesz w Obsługa tabletów i dużych ekranów stronę.
Grafika
Programowalne cieniowanie
Począwszy od Androida 13, system zawiera obsługę
RuntimeShader
obiektów, z
zachowania zdefiniowane za pomocą języka cieniowania grafiki Androida
(AGSL). Akcje AGSL
składni za pomocą GLSL, ale działa w ramach silnika renderowania Androida,
dostosować obraz w obszarze roboczym Androida oraz filtrować zawartość widoku.
Android używa wewnętrznie tych modułów do cieniowania,
efekty fali,
rozmycie,
oraz
rozciągnięciem w trybie dalekim.
Android 13 i nowsze umożliwiają tworzenie podobnych zaawansowanych efektów
.
Ulepszenia dotyczące choreografa
Android 13 wprowadza publiczne metody interfejsu API
Choreographer
i
ASurfaceControl
tam
więcej informacji o możliwych osiach czasu klatek i dodać
więcej kontekstu
SurfaceFlinger
na temat cyklu życia klatek. Podobnie jak wcześniej, aplikacje mogą
oddzwonienie
do Choreographer
i otrzymać informacje o osi czasu klatek. W Androidzie 13 (interfejs API)
poziom 33), funkcja Choreographer
zwraca wiele możliwych czasów prezentacji i
odpowiednie terminy kadrowania. Aplikacje mogą określać czas prezentacji i
następnie
powiadom użytkownika SurfaceFlinger
z wyboru. SurfaceFlinger
wtedy nie próbuje zastosować transakcji lub
zatrzask buforuje się przed żądanym czasem prezentacji.
Aparat
Nagrywanie filmów HDR
Począwszy od Androida 13 Interfejsy API Camera2 obsługują nagrywanie filmów High Dynamic Range (HDR), co pozwala na podgląd i nagrywaj filmy HDR za pomocą aparatu. W porównaniu do standardowych kreacji dynamicznych Zakres (SDR) zapewnia szerszy zakres kolorów i zwiększa zakres dynamiki. składnika luminancji (od 100 cd/m2 do 1000 s w przypadku cd/m2). Dzięki temu jakość filmów jest bardziej zbliżona do rzeczywistych i bogatsza kolorów, jaśniejszych podświetleń i ciemniejszych cieni.
Więcej informacji o nagrywaniu filmów HDR znajdziesz w Dokumentacja rejestrowania wideo HDR.
Multimedia
Dźwięk przestrzenny
Dźwięk przestrzenny to niezwykłe doznania dźwiękowe, które kojarzą się z treściami multimedialnymi bardziej realistyczne dla użytkowników. Zobacz dźwięk przestrzenny dokumentacji ze szczegółowymi informacjami na temat integracji z tą funkcją.
Przewidywane kierowanie dźwięku
Android 13 pomaga aplikacjom do multimediów określać, jak będzie kierowany dźwięk, Android 13
wprowadzamy interfejsy API tras audio w
AudioManager
.
getAudioDevicesForAttributes()
Interfejs API umożliwia pobranie listy urządzeń, które mogą służyć do odtwarzania
określonego dźwięku, a
getDirectProfilesForAttributes()
Interfejs API pomaga określić, czy strumień audio można odtwarzać bezpośrednio. Używaj
za pomocą tych interfejsów API,
AudioFormat
– do wykorzystania w przypadku dźwięku
śledzić.
Ułatwienia dostępu
Audiodeskrypcja
Android 13 (poziom API 33) wprowadza nowe systemowe preferencje ułatwień dostępu
który umożliwia użytkownikom włączenie audiodeskrypcji we wszystkich aplikacjach. Dźwięk
„description” to dodatkowa ścieżka narracji, w której lektor mówi
przez prezentację, opisując, co dzieje się na ekranie w trakcie
naturalne pauzy.
Aplikacje mogą korzystać z preferowanych przez użytkownika ścieżek audiodeskrypcji przez
i wysyła zapytanie za pomocą narzędzia isAudioDescriptionRequested()
,
Jak widać w tym fragmencie kodu:
Kotlin
private lateinit var accessibilityManager: AccessibilityManager // In onCreate(): accessibilityManager = getSystemService(AccessibilityManager::class.java) // Where your media player is initialized if (accessibilityManager.isAudioDescriptionRequested) { // User has requested to enable audio descriptions }
Java
private AccessibilityManager accessibilityManager; // In onCreate(): accessibilityManager = getSystemService(AccessibilityManager.class); // Where your media player is initialized if(accessibilityManager.isAudioDescriptionRequested()) { // User has requested to enable audio descriptions }
Aplikacje mogą monitorować zmianę preferencji użytkownika, dodając detektor do
AccessbilityManager
:
Kotlin
private val listener = AccessibilityManager.AudioDescriptionRequestedChangeListener { enabled -> // Preference changed; reflect its state in your media player } override fun onStart() { super.onStart() accessibilityManager.addAudioDescriptionRequestedChangeListener(mainExecutor, listener) } override fun onStop() { super.onStop() accessibilityManager.removeAudioDescriptionRequestedChangeListener(listener) }
Java
private AccessibilityManager.AudioDescriptionRequestedChangeListener listener = enabled -> { // Preference changed; reflect its state in your media player }; @Override protected void onStart() { super.onStart(); accessibilityManager.addAudioDescriptionRequestedChangeListener(getMainExecutor(), listener); } @Override protected void onStop() { super.onStop(); accessibilityManager.removeAudioDescriptionRequestedChangeListener(listener); }
Główna funkcja
Aktualizacje OpenJDK 11
Android 13 rozpoczyna pracę nad odświeżaniem podstawowych bibliotek Androida, aby dostosować wersja LTS OpenJDK 11 z aktualizacjami bibliotek i językiem Java 11 z pomocą dla programistów aplikacji i platform. Podstawowa biblioteka zmienia się wprowadzone w Androidzie 13 będą również dostępne na urządzeniach z tym systemem Aktualizacja systemowa Google Play do modułu ART Mainline.
Android 13 wprowadza te zmiany w bibliotekach podstawowych:
- Obsługa słowa kluczowego
var
w przypadku zmiennych lokalnych i parametrów lambda. Nowe metody w klasie String:
isBlank()
lines()
repeat()
strip()
stripLeading()
stripTrailing()
Obsługa
Collection.toArray(IntFunction)
, ułatwiająca adaptację do tablicy.Pomoc dotycząca
ifPresentOrElse()
,isEmpty()
,orElseThrow()
istream()
wjava.util
zajęciach:Optional
,OptionalDouble
,OptionalInt
iOptionalLong
.Rozszerzona obsługa funkcji
SocketOptions
, w tym możliwość ponownego użycia gniazdek.NullReader
,NullWriter
,InputStream
,OutputStream
itransferTo()
FunkcjaReader
, która przenosi odczytywane znaki naWriter
.Dodano funkcję kodowania i dekodowania adresów URL za pomocą
Charsets
.Funkcja
Charset
w usługachFileReader
,FileWriter
,PrintStream
iPrintWriter
.Nowe:
transferTo()
,readNBytes()
,readAllBytes()
iwriteBytes()
funkcjiByteArrayInput
lubOutputStream
iInput
lubOutputStream
.Obsługa środowiska wykonawczego i kompilatora dla języka
java.lang.invoke.VarHandle
.Aktualizuje interfejs
java.util.concurrent
do interfejsu OpenJDK 11 API za pomocą wewnętrznego interfejsuVarHandle
.
Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi firmy Oracle lub jej podmiotów stowarzyszonych.