Firma Google wydanie otwartej mobilnej platformy . Związane z nowym wydaniem źródła zostały umieszczone w projekcie (gałąź android-10.0.0_r1). Aktualizacje oprogramowania już dla 8 urządzeń z serii Pixel, w tym dla pierwszego modelu Pixel. Ponadto uniwersalne obrazy systemowe GSI (Generic System Images), które pasują do różnych urządzeń opartych na architekturach ARM64 i x86_64. W nadchodzących miesiącach aktualizacje z Androidem 10 będą wydawane dla aktualnych smartfonów takich firm jak Sony Mobile, Xiaomi, Huawei, Nokia, Vivo, OPPO, OnePlus, ASUS, LG i Essential.
nowości:
- Przedstawiono projekt , który pozwala na aktualizację poszczególnych komponentów systemowych bez aktualizacji całej platformy. Takie aktualizacje są pobierane przez Google Play oddzielnie od aktualizacji OTA dostarczanych przez producentów. Zakłada się, że bezpośrednie dostarczanie aktualizacji komponentów platformy niepowiązanych z danym sprzętem pozwoli znacznie skrócić czas otrzymywania aktualizacji, zwiększyć szybkość usuwania luk w zabezpieczeniach i zmniejszyć zależność od producentów urządzeń w zakresie zapewnienia bezpieczeństwa platformy. Moduły z aktualizacjami będą pierwotnie dostarczane z otwartym kodem źródłowym, będą od razu dostępne w repozytoriach AOSP (Android Open Source Project) i mogą zawierać poprawki oraz ulepszenia przygotowane przez zewnętrznych uczestników.
Wśród komponentów, które będą aktualizowane oddzielnie: kodeki multimedialne, framework multimedialny, resolver DNS, Java Security Provider, Documents UI, Permission Controller, ExtServices, dane stref czasowych, (warstwa do tłumaczenia wywołań OpenGL ES na OpenGL, Direct3D 9/11, Desktop GL i Vulkan), Metadata modułu, komponenty sieciowe, logowanie do portalu Captive i ustawienia dostępu do sieci. Aktualizacje komponentów systemowych są dostarczane w nowym formacie pakietów , który różni się od APK możliwością zastosowania na wczesnym etapie ładowania systemu. W przypadku ewentualnych awarii przewidziano tryb przywracania zmian;
- Na poziomie systemu wprowadzono , który może być stosowany w celu zmniejszenia zmęczenia oczu w warunkach słabego oświetlenia.
Tryb ciemny włącza się w ustawieniach Ustawienia > Wyświetlanie, z rozwijanego menu szybkich ustawień lub podczas włączenia trybu oszczędzania energii. Tryb ciemny stosuje się zarówno do systemu, jak i do aplikacji, oferując również automatyczne przekształcanie istniejących motywów w ciemne tonacje. - System automatycznych szybkich odpowiedzi, wcześniej dostępny dla powiadomień, może teraz być używany do generowania rekomendacji dotyczących najprawdopodobniejszych działań w dowolnych aplikacjach. Na przykład, przy wyświetlaniu wiadomości z zaproszeniem na spotkanie, system zaproponuje szybkie odpowiedzi z akceptacją lub odrzuceniem zaproszenia, a także pokaże przycisk do zobaczenia ustalonego miejsca spotkania na mapie. Opcje są dobierane przy użyciu systemu uczenia maszynowego na podstawie analizy nawyków użytkownika.
- Dostępnych jest więcej narzędzi do kontrolowania dostępu aplikacji do informacji o lokalizacji użytkownika. Jeśli wcześniej, po przyznaniu odpowiednich uprawnień, aplikacja mogła uzyskiwać dostęp do lokalizacji w dowolnym momencie, nawet gdy była nieaktywna (działała w tle), to w nowej wersji użytkownik może zezwolić na pozyskiwanie informacji o jego lokalizacji tylko w przypadku aktywnej sesji z aplikacją.
- Dodano tryb kontroli rodzicielskiej „Family Link”, który pozwala na ograniczenie czasu korzystania z urządzenia przez dzieci, przyznawanie bonusowych minut za sukcesy i osiągnięcia, przeglądanie listy uruchamianych aplikacji oraz ocenianie czasu, jaki dziecko spędza w tych aplikacjach, recenzowanie instalowanych aplikacji oraz ustalanie nocnego czasu na zablokowanie dostępu nocą.
- Dodano „tryb skupienia” (Focus Mode), który pozwala na wyciszenie rozpraszających aplikacji na czas, kiedy trzeba skoncentrować się na wykonaniu jakiegoś zadania, na przykład wstrzymując otrzymywanie e-maili i wiadomości, ale pozostawiając mapy i komunikator. W aktualnych wersjach funkcja ta jest jeszcze nieaktywna.
- Dodano sterowanie gestami, które pozwala korzystać z ekranowych gestów do zarządzania, bez wyświetlania paska nawigacji i maksymalizując przestrzeń ekranu dla treści. Na przykład, przyciski typu Wstecz i Strona główna są zastępowane przesunięciem od krawędzi i przesunięciem palca z dołu do góry, a aby wywołać listę uruchomionych aplikacji, należy dłużej dotknąć ekranu. Tryb ten można włączyć w ustawieniach „Ustawienia > System > Gesty”;
- Dodano funkcję „Live Caption”, która automatycznie tworzy napisy podczas oglądania dowolnego wideo lub słuchania nagrań dźwiękowych, niezależnie od używanej aplikacji. Rozpoznawanie mowy odbywa się lokalnie, bez kontaktu z zewnętrznymi usługami. W obecnych wersjach funkcja nie jest jeszcze aktywna;
- Wprowadzono koncepcję „bańki” do jednoczesnej pracy z wieloma aplikacjami. Bańki pozwalają na podejmowanie działań w innych aplikacjach, nie opuszczając bieżącego programu. Dodatkowo, bańki umożliwiają stały dostęp do funkcjonalności określonej aplikacji podczas wykonywania różnych czynności na urządzeniu. Na przykład, za pomocą baniek można w formie przycisków wyświetlanych nad treścią kontynuować rozmowę w komunikatorze, szybko wysyłać wiadomości, mieć na oku listę zadań, robić notatki, korzystać z tłumaczeń i otrzymywać wizualne przypomnienia, jednocześnie pracując nad innymi aplikacjami. Bańki są zrealizowane na tle systemu powiadomień i umożliwiają korzystanie z podobnego API.
- Dodano wsparcie dla urządzeń ze składanymi ekranami, takich jak . Na każdej części składanego ekranu może teraz znajdować się oddzielna aplikacja. W celu obsługi nowych typów ekranów dodano wsparcie dla oddzielnego przetwarzania wielu wydarzeń wybudzenia i zmiany fokusowania (gdy jedna połowa ekranu jest aktywna, a druga pozostaje zamknięta lub gdy obie połowy są aktywne), a także rozszerzono API do obsługi zmiany rozmiaru ekranu (aby aplikacja prawidłowo rozpoznawała zwiększenie rozmiaru ekranu przy otwieraniu drugiej połowy). Do emulatora Android dodano symulację urządzeń ze składanymi ekranami;
- Dodano wsparcie dla skrótów do przesyłania danych i wiadomości (Sharing Shortcuts), umożliwiających szybkie przejście do aplikacji odpowiedzialnej za wysyłkę;
- Dodano wsparcie dla wyskakujących paneli z ustawieniami, które pozwalają na dostęp do kluczowych ustawień systemowych w kontekście aplikacji użytkownika. Aby wyświetlić panele ustawień z aplikacji, udostępnione jest API . Na przykład odtwarzacz multimedialny może wyświetlić panel z ustawieniami systemowymi dźwięku, a przeglądarka ustawienia połączenia sieciowego oraz trybu samolotowego;
Bezpieczeństwo:
- dodatkowe ograniczenia dostępu aplikacji do współdzielonych plików, takich jak kolekcje zdjęć, wideo i muzyka;
- Aby uzyskać dostęp do pobranych plików umieszczonych w katalogu Downloads, aplikacja teraz musi obowiązkowo korzystać z systemowego dialogu wyboru pliku, który zapewnia użytkownikowi pełną kontrolę nad tym, do jakich konkretnych plików może uzyskać dostęp aplikacja;
- Zablokowano możliwość przechodzenia aplikacji z wykonania w tle do aktywnego stanu z wyjściem na pierwszy plan i uzyskaniem fokusu wejścia, przerywając tym samym pracę użytkownika z inną aplikacją. W przypadku konieczności przyciągnięcia uwagi użytkownika przez aplikację w tle, na przykład podczas połączenia przychodzącego, należy teraz używać powiadomienia o wysokim priorytecie z uprawnieniami do wyświetlania na pełnym ekranie;
- dostęp do niezmiennych identyfikatorów urządzenia, takich jak IMEI i numer seryjny. Aby uzyskać takie identyfikatory, aplikacja musi mieć uprawnienia READ_PRIVILEGED_PHONE_STATE.
Aplikacjom również ograniczono dostęp do pseudo-FS "/proc/net" ze statystyką aktywności sieciowej, a dostęp do danych w schowku jest teraz udzielany tylko wtedy, gdy aplikacja jest aktywna (uzyskała fokus wejścia); - Przy zwracaniu listy kontaktów aplikacji zakończono sortowanie wypisów według częstotliwości dostępu do kontaktów, aby ukryć przed aplikacjami informacje o preferencjach użytkownika;
- Domyślnie włączono losowość adresów MAC: przy łączeniu z różnymi sieciami bezprzewodowymi teraz generowane są różne adresy MAC, co uniemożliwia śledzenie ruchu użytkownika między sieciami WiFi;
- Aby uzyskać dostęp do API skanowania sieci Bluetooth, sieci komórkowych i Wi-Fi, teraz wymagane jest uzyskanie uprawnień do pozyskiwania dokładnych informacji o lokalizacji (wcześniej wymagane były uprawnienia do pozyskiwania przybliżonych informacji o lokalizacji). W przypadku, gdy połączenie nawiązywane jest w trybie P2P lub sieć do połączenia jest określana przez system, osobne uprawnienia do dostępu do informacji o lokalizacji nie są wymagane.
- Wprowadzono wsparcie dla technologii zabezpieczania sieci bezprzewodowych , która zapewnia ochronę przed atakami typu brute-force (uniemożliwia odgadnięcie hasła w trybie offline) oraz wykorzystuje protokół autoryzacji SAE. Aby generować klucze szyfrowania w otwartych sieciach, dodano wsparcie dla procesu negocjacji połączenia realizowanego przez rozszerzenie OWE ();
- i domyślnie dla wszystkich połączeń włączono wsparcie . W testach Google zastosowanie TLS 1.3 pozwala na przyspieszenie nawiązywania bezpiecznych połączeń o nawet 40% w porównaniu do TLS 1.2.
- Wprowadzono nowe przechowywanie , które zapewnia poziom izolacji dla plików aplikacji. Dzięki temu API aplikacja może stworzyć na zewnętrznych nośnikach (np. na karcie SD) oddzielny, izolowany katalog dla swoich plików, do którego nie będą miały dostępu inne aplikacje. Aktualna aplikacja będzie ograniczona do tego katalogu w zakresie przechowywania zdjęć, filmów i muzyki, nie będzie kolidować z ogólnymi zbiorami plików multimedialnych. Aby uzyskać dostęp do ogólnych zbiorów plików, wymagane jest uzyskanie osobnych uprawnień.
- W API , ujednolicającym wyświetlanie dialogu biometrycznej autoryzacji, dodano wsparcie dla pasywnych metod autoryzacji, takich jak rozpoznawanie twarzy. Zaoferowano oddzielne metody obsługi jawnej i niejawnej autoryzacji. W przypadku jawnej autoryzacji użytkownik musi potwierdzić operację, natomiast w przypadku niejawnej — autoryzacja może być realizowana dyskretnie w trybie pasywnym.
umożliwić innym aplikacjom przetwarzanie strumienia dźwiękowego. Aby umożliwić innym aplikacjom dostęp do wyjścia dźwięku, wymagana jest specjalna zgoda;
PGO (Profile Guided Optimization) obejmujących informacje o najczęściej wykonywanych częściach kodu. Wstępna kompilacja takich fragmentów znacznie skraca czas uruchamiania. W samej ART przeprowadzono optymalizację dla wcześniejszego uruchamiania procesu aplikacji oraz przeniesienia go do izolowanego kontenera. W obrazie pamięci aplikacji zapewnione jest zachowanie dodatkowych danych, takich jak klasy. Realizowany jest wielowątkowy tryb ładowania obrazów pamięci aplikacji. Zwiększona została efektywność działania zbieracza śmieci dzięki oddzielnemu przetwarzaniu niedawno utworzonych obiektów.
Reply (dobór odpowiedzi na wiadomości). W nowym wydaniu dodano 60 nowych operacji, w tym ARGMAX, ARGMIN oraz kwantowany LSTM, a także przeprowadzono znaczne optymalizacje wydajności, co pozwoliło na wykorzystanie API do wsparcia nowych modeli uczenia maszynowego, takich jak rozpoznawanie obiektów i segmentacja obrazów.
Źródło: opennet.ru
