Lista funkcji i zmian w Androidzie 17

W tabeli poniżej znajdziesz wszystkie udokumentowane funkcje i zmiany w działaniu, które mogą mieć wpływ na deweloperów aplikacji. Na tej liście możesz znaleźć zmiany, które Cię dotyczą, a następnie kliknąć odpowiedni link, aby przeczytać dokumentację.

Kategoria Typ Nazwa
Interfejs użytkownika i systemu Zmiana (wszystkie aplikacje) Przywracanie domyślnej widoczności IME po obróceniu
Gdy urządzenie zostanie obrócone lub konfiguracja zostanie zmieniona, system używa domyślnego trybu widoczności, aby określić, czy wyświetlić IME.
Interfejs użytkownika i systemu Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Redukcja ciągu znaków klienta użytkownika w WebView
Od Androida 17 domyślny ciąg znaków klienta użytkownika w WebView jest krótszy.
Interfejs użytkownika i systemu Nowe funkcje i interfejsy API Dedykowany strumień głośności Asystenta
Android 17 wprowadza dedykowany strumień głośności Asystenta dla aplikacji Asystenta, umożliwiając niezależne sterowanie głośnością multimediów. Aplikacje Asystenta z dostępem do nowego trybu MODE_ASSISTANT_CONVERSATION mogą dodatkowo poprawić głośność – sterowanie poza aktywnym odtwarzaniem lub za pomocą urządzeń peryferyjnych Bluetooth.
Interfejs użytkownika i systemu Nowe funkcje i interfejsy API Szablon MetricStyle
Android 17 wprowadza szablon MetricStyle, który obsługuje przypadki użycia związane ze zdrowiem i kondycją, minutnikami, stoperami i podróżami.
Interfejs użytkownika i systemu Nowe funkcje i interfejsy API Aktualizacja na żywo – interfejs Semantic color API
Aktualizacje na żywo wprowadzają interfejs Semantic color API, który obsługuje kolory silnie powiązane z bezpieczeństwem, zagrożeniem i ostrzeżeniem.
Interfejs użytkownika i systemu Nowe funkcje i interfejsy API Handoff
Handoff umożliwia użytkownikowi rozpoczęcie zadania na jednym urządzeniu i kontynuowanie go na innym.
Bezpieczeństwo Zmiana (wszystkie aplikacje) Blokowanie ruchu zwrotnego między profilami
Domyślnie ruch zwrotny między profilami jest niedozwolony.
Bezpieczeństwo Zmiana (wszystkie aplikacje) Limity magazynu kluczy dla poszczególnych aplikacji
Aplikacje mają limit liczby kluczy magazynu kluczy, które mogą utworzyć, w zależności od docelowego poziomu interfejsu API. Utworzenie większej liczby kluczy powoduje wyjątek.
Bezpieczeństwo Zmiana (wszystkie aplikacje) Ograniczanie niejawnych uprawnień URI
Jeśli aplikacje na Androida inicjują intencje z identyfikatorami URI, zalecamy, aby jawnie przydzielały wszystkie niezbędne uprawnienia URI, zamiast polegać na automatycznym przyznawaniu ich przez system.
Bezpieczeństwo Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Domyślne włączanie CT
W Androidzie 16 umożliwiliśmy aplikacjom włączenie funkcji Certificate Transparency. W Androidzie 17 planujemy włączyć Certificate Transparency dla wszystkich połączeń TLS wykonywanych przez urządzenie.
Bezpieczeństwo Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Bezpieczniejszy natywny DCL – C
Aplikacje muszą zapewnić, że moduły DCL nie mogą zostać nadpisane bez wykrycia.
Bezpieczeństwo Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Ograniczanie pól PII w widoku danych CP2
Aplikacje kierowane na Androida 17 lub nowszego nie mogą uzyskiwać dostępu do niektórych pól PII w widoku danych CP2.
Bezpieczeństwo Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Wymuszanie ścisłych kontroli SQL w CP2
W przypadku aplikacji kierowanych na Androida 17 lub nowszego dostawca kontaktów 2 wymusza ścisłą weryfikację zapytań SQL, gdy uzyskiwany jest dostęp do tabeli ContactsContract.Data bez uprawnienia READ_CONTACTS.
Bezpieczeństwo Nowe funkcje i interfejsy API Tryb ochrony zaawansowanej Androida (AAPM)
Oferuje użytkownikom Androida nowy, zaawansowany zestaw funkcji zabezpieczeń.
Bezpieczeństwo Nowe funkcje i interfejsy API Podpisywanie APK za pomocą PQC
Dodaje obsługę podpisywania plików APK za pomocą nowego klucza podpisywania PQC (post-quantum crypto).
Główna funkcjonalność Zmiana (wszystkie aplikacje) Limity pamięci aplikacji
Android 17 wprowadza nowe limity pamięci aplikacji oparte na łącznej ilości pamięci RAM urządzenia.
Główna funkcjonalność Zmiana (wszystkie aplikacje) Limity pamięci aplikacji w czasie działania
System będzie bardziej rygorystycznie egzekwować limity pamięci aplikacji. Przekroczenie tych limitów może spowodować awarię aplikacji.
Główna funkcjonalność Zmiana (wszystkie aplikacje) Harmonogram wycofywania atrybutu usesCleartextTraffic
W przyszłej wersji planujemy wycofać atrybut usesCleartextTraffic. Aplikacje, które muszą nawiązywać połączenia HTTP, powinny zamiast tego przejść na korzystanie z plików konfiguracyjnych zabezpieczeń sieci.
Główna funkcjonalność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Nowa flaga funkcji NPU
Aplikacje kierowane na Androida 17 muszą zadeklarować funkcję android.hardware.npu, jeśli potrzebują dostępu do NPU.
Główna funkcjonalność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Ograniczenia pamięci w przypadku niestandardowych widoków powiadomień
Android 17 (poziom interfejsu API 37) wprowadza bardziej rygorystyczne kontrole wykorzystania pamięci w przypadku powiadomień korzystających z niestandardowych widoków.
Główna funkcjonalność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Statyczne pola finalne są teraz niezmodyfikowalne
Aplikacje kierowane na Androida 17 lub nowszego nie mogą modyfikować statycznych pól finalnych. Próba wykonania tej czynności powoduje wyjątek.
Główna funkcjonalność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Nowa implementacja MessageQueue bez blokad
Aplikacje kierowane na Androida 17 lub nowszego otrzymują nową implementację MessageQueue bez blokad.
Główna funkcjonalność Nowe funkcje i interfejsy API Nowe wyzwalacze ProfilingManager
Android 17 wprowadza kilka nowych wyzwalaczy systemowych do ProfilingManager, które pomagają zbierać szczegółowe dane do debugowania problemów z wydajnością.
Główna funkcjonalność Nowe funkcje i interfejsy API Interfejsy JobDebugInfo API
Nowe interfejsy `JobDebugInfo` API, które pomagają deweloperom debugować zadania JobScheduler.
Prywatność Zmiana (wszystkie aplikacje) Ograniczony dostęp do wiadomości
Większość aplikacji nie może już uzyskiwać dostępu do w pełni zaszyfrowanych wiadomości.
Prywatność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Ochrona OTP w przypadku standardowych SMS-ów
Aplikacje o niskim priorytecie nie mają natychmiastowego dostępu do haseł jednorazowych (OTP), nawet jeśli użytkownicy przyznali im uprawnienia do SMS-ów.
Prywatność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Wymagane uprawnienia do sieci lokalnej w przypadku aplikacji kierowanych na Androida 17
Aplikacje kierowane na Androida 17 nie mogą uzyskiwać dostępu do urządzeń lokalnych, chyba że mają odpowiednie uprawnienia w grupie urządzeń w pobliżu. W Androidzie 16 ten wymóg był opcjonalny.
Prywatność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Włączony ECH (Encrypted Client Hello)
W przypadku aplikacji kierowanych na Androida 17 lub nowszego ECH jest włączony dla połączeń TLS.
Prywatność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Ukrywanie haseł na urządzeniach fizycznych
Urządzenie nie wyświetla już ostatnio wpisanego hasła wprowadzonego na urządzeniu fizycznym.
Prywatność Nowe funkcje i interfejsy API Selektor kontaktów na Androidzie
Android 17 wprowadza nowy selektor kontaktów, który umożliwia aplikacjom dostęp do kontaktów użytkownika bez uprawnień.
Interakcja z użytkownikiem Zmiana (wszystkie aplikacje) Touchpady domyślnie dostarczają zdarzenia względne podczas przechwytywania wskaźnika
Od Androida 17 touchpady dostarczają względne zdarzenia wskaźnika (tak jak w przypadku zdarzeń myszy) zamiast zdarzeń bezwzględnych.
Multimedia Zmiana (wszystkie aplikacje) Wzmacnianie zabezpieczeń dźwięku w tle
Aplikacje nie mogą odtwarzać dźwięku ani używać innych zakłócających interfejsów API dźwięku, chyba że są widoczne lub mają usługę (działającą) na pierwszym planie.
Multimedia Nowe funkcje i interfejsy API Nowe uprawnienie BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION do przechwytywania poufnego dźwięku
Wprowadza nowe uprawnienie BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION do jednoczesnego przechwytywania dźwięku podczas połączeń i innych poufnych przypadków użycia dźwięku.
Łączność Zmiana (wszystkie aplikacje) Autonomiczne ponowne parowanie w przypadku utraty połączenia Bluetooth
System automatycznie przywraca połączenia Bluetooth w tle po utracie połączenia, eliminując konieczność ręcznego rozparowywania i ponownego parowania urządzeń w Ustawieniach.
Łączność Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Spójne działanie metody read() w BluetoothSocket w przypadku RFCOMM
Aplikacje kierowane na Androida 17 lub nowszego będą miały implementację BluetoothSocket RFCOMM zgodną ze standardowym działaniem Java InputStream.
Łączność Nowe funkcje i interfejsy API Ograniczone sieci satelitarne
Skupia się na umożliwieniu aplikacjom na Androida efektywnego działania w sieciach satelitarnych o niskiej przepustowości.
Ułatwienia dostępu Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Obsługa ułatwień dostępu w przypadku złożonego pisania na klawiaturze fizycznej IME
Umożliwiając IME przekazywanie większej ilości informacji o zmianach tekstu do usługi ułatwień dostępu, ta funkcja pomaga czytnikom ekranu zapewniać bardziej spójne, naturalne i niezawodne informacje zwrotne w przypadku złożonych IME.
Rodzaje urządzeń Zmiana (aplikacje kierowane na Androida 17 lub nowszego) Zmiany w interfejsie Platform API, które ignorują ograniczenia dotyczące orientacji, możliwości zmiany rozmiaru i formatu obrazu na dużych ekranach (sw>=600dp)
Android 16 wprowadził zmiany w interfejsie Platform API, które ignorują ograniczenia dotyczące orientacji, możliwości zmiany rozmiaru i formatu obrazu na dużych ekranach (sw >= 600 dp). Aplikacje kierowane na Androida 17 nie będą już mogły zrezygnować z tych zmian.
Grafika Nowe funkcje i interfejsy API WebGPU na Androidzie
WebGPU oferuje idiomatyczne interfejsy API grafiki i obliczeń w Kotlinie i Javie, które zapewniają dostęp do Vulkan, co jest częścią przejścia Androida na Vulkan jako podstawowy interfejs API GPU niskiego poziomu.