Vydání mobilní platformy Android 12

Google zveřejnil vydání otevřené mobilní platformy Android 12. Zdrojové texty spojené s novým vydáním jsou zveřejněny v úložišti Git projektu (větev android-12.0.0_r1). Aktualizace firmwaru jsou připraveny pro zařízení řady Pixel a také pro smartphony výrobců Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo a Xiaomi. Kromě toho byly vytvořeny univerzální sestavy GSI (Generic System Images), vhodné pro různá zařízení založená na architekturách ARM64 a x86_64.

Hlavní inovace:

  • Byla navržena jedna z nejvýznamnějších aktualizací designu rozhraní v historii projektu. Nový design implementuje koncept „Material You“, propagovaný jako další generace Material Designu. Nový koncept bude automaticky aplikován na všechny platformy a prvky rozhraní a nebude vyžadovat, aby vývojáři aplikací prováděli jakékoli změny. V červenci je plánováno poskytnout vývojářům aplikací první stabilní vydání nové sady nástrojů pro vývoj grafických rozhraní – Jetpack Compose.
    Vydání mobilní platformy Android 12

    Samotná platforma má nový design widgetů. Widgety byly zviditelněny, rohy byly lépe zaobleny a byla poskytnuta možnost používat dynamické barvy, které odpovídají systémovému tématu. Přidány interaktivní ovládací prvky, jako jsou zaškrtávací políčka a přepínače (CheckBox, Switch a RadioButton), například, které vám umožňují upravovat seznamy úkolů ve widgetu TODO bez otevření aplikace.

    Vydání mobilní platformy Android 12

    Implementován hladší vizuální přechod do aplikací spouštěných z widgetů. Personalizace widgetů byla zjednodušena – přibylo tlačítko (kruh s tužkou) pro rychlé přenastavení umístění widgetu na obrazovce, které se objeví při delším dotyku widgetu.

    Vydání mobilní platformy Android 12Vydání mobilní platformy Android 12

    K dispozici jsou další režimy pro omezení velikosti widgetu a možnost použít adaptivní rozvržení prvků widgetu (responzivní rozvržení) k vytvoření standardních rozvržení, které se mění v závislosti na velikosti viditelné oblasti (můžete například vytvořit samostatná rozvržení pro tablety a smartphony). Rozhraní pro výběr widgetu implementuje dynamický náhled a schopnost zobrazit popis widgetu.

    Vydání mobilní platformy Android 12
  • Přidána možnost automatického přizpůsobení systémové palety barvě vybrané tapety – systém automaticky detekuje převládající barvy, upraví aktuální paletu a aplikuje změny na všechny prvky rozhraní, včetně oznamovací oblasti, zamykací obrazovky, widgetů a ovládání hlasitosti.
  • Byly implementovány nové animované efekty, jako je postupné přibližování a plynulé posouvání oblastí při posouvání, zobrazování a přesouvání prvků na obrazovce. Když například zrušíte oznámení na zamykací obrazovce, ukazatel času se automaticky roztáhne a zabere místo, které dříve zabíralo oznámení.
  • Přepracován byl design rozbalovací oblasti s upozorněními a rychlým nastavením. Do rychlého nastavení přibyly možnosti pro Google Pay a ovládání chytré domácnosti. Podržením vypínače vyvoláte Google Assistant, kterému můžete přikázat zavolat, otevřít aplikaci nebo přečíst nahlas článek. Oznámení s obsahem specifikovaným aplikací jsou podávána v obecné formě.
    Vydání mobilní platformy Android 12
  • Přidán efekt Stretch overscroll, který označuje, že se uživatel přesunul za oblast posouvání a dosáhl konce obsahu. S novým efektem se zdá, že se obsahový obrázek protáhne a vrátí se zpět. Nové chování na konci posouvání je ve výchozím nastavení povoleno, ale v nastavení je možnost vrátit se ke starému chování.
  • Rozhraní bylo optimalizováno pro zařízení se skládacími obrazovkami.
    Vydání mobilní platformy Android 12
  • Byly implementovány plynulejší zvukové přechody – při přepínání z jedné aplikace, která vydává zvuk do druhé, je nyní zvuk první z nich plynule ztlumen a druhý plynule zesiluje, aniž by se jeden zvuk překrýval na druhý.
  • Modernizováno bylo rozhraní pro správu síťových připojení v bloku rychlého nastavení, panelu a systémovém konfigurátoru. Byl přidán nový internetový panel, který umožňuje rychle přepínat mezi různými poskytovateli a diagnostikovat problémy.
    Vydání mobilní platformy Android 12
  • Přidána možnost vytvářet snímky obrazovky, které pokrývají nejen viditelnou oblast, ale také obsah v oblasti posouvání. Možnost ponechat obsah mimo viditelnou oblast funguje pro všechny aplikace, které pro výstup používají třídu View. Pro implementaci podpory pro posouvání snímků obrazovky v programech, které používají specifická rozhraní, bylo navrženo rozhraní API ScrollCapture.
    Vydání mobilní platformy Android 12
  • Vylepšena byla funkce automatického otáčení obsahu obrazovky, která nyní dokáže pomocí rozpoznání obličeje z přední kamery určit, zda je třeba obrazovku otočit, například když člověk používá telefon vleže. Aby byla zajištěna důvěrnost, jsou informace zpracovávány za chodu bez přechodného ukládání snímků. Tato funkce je aktuálně dostupná pouze na telefonech Pixel 4 a novějších.
  • Vylepšený režim obrazu v obraze (PIP, Obraz v obraze) a zvýšená plynulost přechodových efektů. Pokud povolíte automatický přechod do PIP pomocí gesta up-to-home (posun spodní části obrazovky nahoru), aplikace se nyní okamžitě přepne do režimu PIP, aniž by čekala na dokončení animace. Vylepšená změna velikosti oken PIP s jiným než video obsahem. Přidána možnost skrýt okno PIP přetažením na levý nebo pravý okraj obrazovky. Chování při dotyku okna PIP bylo změněno – jedním dotykem se nyní zobrazí ovládací tlačítka a dvojitým dotykem se změní velikost okna.
  • Optimalizace výkonu:
    • Byla provedena významná optimalizace výkonu systému - zatížení CPU hlavních systémových služeb se snížilo o 22 %, což vedlo ke zvýšení životnosti baterie o 15 %. Snížením sporů o zámek, snížením latence a optimalizací I/O se zvýší výkon přechodu z jedné aplikace do druhé a zkrátí se doba spouštění aplikace.

      V PackageManager se při práci se snímky v režimu pouze pro čtení sníží spory o zámek o 92 %. Meziprocesový komunikační modul Binder používá u některých typů volání odlehčené ukládání do mezipaměti ke snížení latence až 47krát. Vylepšený výkon pro zpracování souborů dex, odex a vdex, což má za následek rychlejší načítání aplikací, zejména na zařízeních s nízkou pamětí. Spouštění aplikací z notifikací bylo zrychleno, například spouštění Google Photos z notifikace je nyní o 34 % rychlejší.

      Výkon databázových dotazů byl zlepšen použitím inline optimalizací v operaci CursorWindow. Pro malá množství dat se CursorWindow zrychlil o 36 % a u sad s více než 1000 řádky může být zrychlení až 49násobné.

      Kritéria jsou navržena pro klasifikaci zařízení podle výkonu. Na základě možností zařízení je mu přiřazena výkonnostní třída, kterou lze následně využít v aplikacích k omezení funkčnosti kodeků na zařízeních s nízkou spotřebou nebo ke zpracování kvalitnějšího multimediálního obsahu na výkonném hardwaru.

    • Byl implementován režim hibernace aplikace, který umožňuje, pokud uživatel po dlouhou dobu explicitně neinteragoval s programem, automaticky resetovat dříve udělená oprávnění k aplikaci, zastavit provádění, vrátit prostředky používané aplikací, jako je paměť, a blokovat spouštění práce na pozadí a zasílání push notifikací. Režim lze použít pro většinu aplikací a umožňuje chránit uživatelská data, ke kterým mají i nadále přístup dávno zapomenuté programy. V případě potřeby lze režim hibernace selektivně deaktivovat v nastavení.
    • Animace při otáčení obrazovky byla optimalizována, což zkrátilo zpoždění před otočením přibližně o 25 %.
    • Struktura zahrnuje nový vysoce výkonný vyhledávač AppSearch, který umožňuje indexovat informace na zařízení a provádět fulltextové vyhledávání s hodnocením výsledků. AppSearch poskytuje dva typy indexů – pro organizaci vyhledávání v jednotlivých aplikacích a pro prohledávání celého systému.
    • Přidáno rozhraní Game Mode API a odpovídající nastavení, která vám umožní spravovat výkonnostní profil hry – můžete například obětovat výkon, abyste prodloužili výdrž baterie nebo využít všechny dostupné zdroje k dosažení maximálních FPS.
    • Přidána funkce play-as-you-download pro stahování herních zdrojů na pozadí během procesu instalace, což vám umožní začít hrát ještě před dokončením stahování. aplikace.
    • Zvýšená odezva a rychlost reakce při práci s upozorněními. Když například uživatel klepne na oznámení, okamžitě ho přenese do přidružené aplikace. Aplikace omezují používání oznamovacích trampolín.
    • Optimalizovaná IPC volání v Binderu. Použitím nové strategie ukládání do mezipaměti a odstraněním sporů o zámek se výrazně snížila latence. Celkově se výkon volání Binder zhruba zdvojnásobil, ale existují oblasti, kde bylo dosaženo ještě výraznějšího zrychlení. Například volání refContentProvider() bylo 47krát rychlejší, releaseWakeLock() 15krát rychlejší a JobScheduler.schedule() 7.9krát rychlejší.
    • Aby se předešlo potenciálním problémům s výkonem, je aplikacím zakázáno spouštět služby na popředí, když běží na pozadí, s výjimkou několika speciálních případů. Chcete-li začít pracovat na pozadí, doporučujeme použít WorkManager. Pro zjednodušení přechodu byl v JobScheduler navržen nový typ práce, který začíná okamžitě, má zvýšenou prioritu a přístup k síti.
  • Změny ovlivňující zabezpečení a soukromí:
    • Rozhraní Privacy Dashboard bylo implementováno s obecným přehledem všech nastavení oprávnění, což vám umožní pochopit, k čemu mají aplikace uživatelských dat přístup. Rozhraní také obsahuje časovou osu, která vizualizuje historii přístupu aplikace k mikrofonu, kameře a datům o poloze. U každé aplikace si můžete prohlédnout podrobnosti a důvody přístupu k citlivým datům.
      Vydání mobilní platformy Android 12
    • Na panel byly přidány indikátory aktivity mikrofonu a kamery, které se objeví, když aplikace přistoupí ke kameře nebo mikrofonu. Po kliknutí na indikátory se zobrazí dialogové okno s nastavením, které vám umožní určit, která aplikace pracuje s kamerou nebo mikrofonem, a v případě potřeby zrušit oprávnění.
    • Do vyskakovacího bloku rychlého nastavení přibyly přepínače, kterými můžete násilně vypnout mikrofon a kameru. Po vypnutí způsobí pokusy o přístup ke kameře a mikrofonu upozornění a odeslání prázdných dat do aplikace.
      Vydání mobilní platformy Android 12
    • Přidáno nové upozornění, které se objeví ve spodní části obrazovky vždy, když se aplikace pokusí přečíst obsah schránky prostřednictvím volání funkce getPrimaryClip(). Pokud je obsah ze schránky zkopírován ve stejné aplikaci, do které byl přidán, upozornění se nezobrazí.
    • Přidáno samostatné oprávnění BLUETOOTH_SCAN pro skenování zařízení v okolí přes Bluetooth. Dříve byla tato možnost poskytována na základě přístupu k informacím o poloze zařízení, což vedlo k nutnosti udělovat další oprávnění aplikacím, které vyžadují spárování s jiným zařízením přes Bluetooth.
    • Modernizován byl dialog pro poskytování přístupu k informacím o poloze zařízení. Uživatel má nyní možnost poskytnout aplikaci informace o přesné poloze nebo poskytnout pouze přibližné údaje a také omezit oprávnění pouze na aktivní relaci s programem (zakázat přístup na pozadí). Úroveň přesnosti dat vrácených při výběru přibližného umístění lze změnit v nastavení, a to i ve vztahu k jednotlivým aplikacím.
      Vydání mobilní platformy Android 12
    • Vývojáři aplikací mají možnost zakázat vyskakovací varování, která překrývají obsah. Dříve byla možnost zobrazení překrývajících se oken řízena vyžadováním ověření oprávnění během instalace aplikací, které zobrazují překrývající se okna. Nebyly k dispozici žádné nástroje, které by ovlivnily překrývání obsahu z aplikací, jejichž okna se překrývají. Při použití volání Window#setHideOverlayWindows() budou nyní všechna překrývající se okna automaticky skryta. Skrytí lze povolit například při zobrazení zvláště důležitých informací, jako je potvrzení transakce.
    • Aplikace mají další nastavení, která omezují operace upozornění, když je obrazovka zamčená. Dříve jste měli možnost ovládat viditelnost oznámení pouze při zamknuté obrazovce, ale nyní můžete povolit povinné ověřování pro provádění jakýchkoli akcí s oznámeními, když je obrazovka zamčená. Například aplikace pro zasílání zpráv může vyžadovat ověření před odstraněním nebo označením zprávy jako přečtené.
    • Přidáno API PackageManager.requestChecksums() pro vyžádání a ověření kontrolního součtu nainstalované aplikace. Mezi podporované algoritmy patří SHA256, SHA512 a Merkle Root.
    • Webový modul WebView implementuje možnost používat atribut SameSite k řízení zpracování souborů cookie. Hodnota „SameSite=Lax“ omezuje odesílání souboru cookie pro dílčí požadavky mezi weby, jako je požadavek na obrázek nebo načítání obsahu prostřednictvím prvku iframe z jiného webu. V režimu „SameSite=Strict“ se soubory cookie neodesílají pro žádný druh požadavků napříč weby, včetně všech příchozích odkazů z externích webů.
    • Pokračujeme v práci na randomizaci MAC adres, abychom eliminovali možnost sledování zařízení při připojení k bezdrátové síti. Neprivilegované aplikace mají omezený přístup k MAC adrese zařízení a volání getHardwareAddress() nyní vrací hodnotu null.
  • Nízkoúrovňové změny a vylepšení pro vývojáře aplikací:
    • Přidána možnost přizpůsobit prvky rozhraní zařízením se zaoblenými obrazovkami. Vývojáři nyní mohou získat informace o zaoblení obrazovky a upravit prvky rozhraní, které dopadají na neviditelné rohové oblasti. Prostřednictvím nového RoundedCorner API můžete zjistit parametry, jako je poloměr a střed zaoblení, a pomocí Display.getRoundedCorner() a WindowInsets.getRoundedCorner() můžete určit souřadnice každého zaobleného rohu obrazovky.
      Vydání mobilní platformy Android 12
    • Bylo přidáno nové CompanionDeviceService API, pomocí kterého můžete aktivovat aplikace ovládající doprovodná zařízení, jako jsou chytré hodinky a fitness trackery. API řeší problém se spouštěním a připojením potřebných aplikací, když se v blízkosti objeví doprovodné zařízení. Systém aktivuje službu, když je zařízení v blízkosti, a odešle upozornění, když je zařízení odpojeno nebo když zařízení vstoupí nebo opustí rozsah. Aplikace mohou také používat nový profil doprovodného zařízení ke snadnějšímu nastavení oprávnění pro připojení k zařízení.
    • Vylepšený systém prognózování kapacity. Aplikace si nyní mohou vyžádat informace o předpokládané celkové propustnosti ve vztahu k operátorovi, konkrétní bezdrátové síti (Wi-Fi SSID), typu sítě a síle signálu.
    • Aplikace běžných vizuálních efektů, jako je rozmazání a zkreslení barev, byla zjednodušena a lze je nyní použít pomocí rozhraní RenderEffect API na jakýkoli objekt RenderNode nebo celou viditelnou oblast, včetně řetězu s dalšími efekty. Tato funkce vám například umožňuje rozmazat obrázek zobrazený prostřednictvím ImageView, aniž byste museli explicitně kopírovat, zpracovávat a nahrazovat bitmapu, a přesunout tyto akce na stranu platformy. Navíc je navrženo rozhraní API Window.setBackgroundBlurRadius(), pomocí kterého můžete rozostřit pozadí okna s efektem matného skla a zvýraznit hloubku rozmazáním prostoru kolem okna.
      Vydání mobilní platformy Android 12
    • Integrované nástroje pro překódování mediálních toků, které lze použít v prostředí s kamerovou aplikací, která ukládá video ve formátu HEVC, pro zajištění kompatibility s aplikacemi, které tento formát nepodporují. Pro takové aplikace byla k běžnějšímu formátu AVC přidána funkce automatického překódování.
    • Přidána podpora obrazového formátu AVIF (AV1 Image Format), který využívá technologie komprese uvnitř snímku z formátu kódování videa AV1. Kontejner pro distribuci komprimovaných dat v AVIF je zcela podobný HEIF. AVIF podporuje jak obrazy v HDR (High Dynamic Range) a Wide-gamut barevném prostoru, tak i ve standardním dynamickém rozsahu (SDR).
    • Jednotné API OnReceiveContentListener je navrženo pro vkládání a přesouvání rozšířených typů obsahu (formátovaný text, obrázky, videa, zvukové soubory atd.) mezi aplikacemi pomocí různých zdrojů dat, včetně schránky, klávesnice a rozhraní drag&drop.
    • Byl přidán efekt hmatové zpětné vazby, realizovaný pomocí vibračního motoru zabudovaného v telefonech, jehož frekvence a intenzita vibrací závisí na parametrech aktuálně vydávaného zvuku. Nový efekt vám umožňuje fyzicky cítit zvuk a lze jej použít k přidání dalšího realismu do her a zvukových programů.
    • V režimu Immersive, ve kterém je program zobrazen na celé obrazovce se skrytými servisními panely, je navigace zjednodušena pomocí ovládacích gest. Například v knihách, videích a fotografiích lze nyní procházet jediným gestem přejetí.
    • V rámci projektu Mainline, který umožňuje aktualizovat jednotlivé systémové komponenty bez aktualizace celé platformy, byly kromě 22 modulů dostupných v Androidu 11 připraveny nové aktualizovatelné systémové moduly. Aktualizace se týkají nehardwarových komponent, které se stahují přes Google Play odděleně od aktualizací firmwaru OTA od výrobce. Mezi nové moduly, které lze aktualizovat přes Google Play bez aktualizace firmwaru, patří ART (Android Runtime) a modul pro překódování videa.
    • Do třídy WindowInsets bylo přidáno API pro určení pozice zobrazení indikátorů využití kamery a mikrofonu (indikátory se mohou překrývat s ovládacími prvky v programech nasazených na celou obrazovku a prostřednictvím zadaného API může aplikace upravit své rozhraní).
    • U centrálně spravovaných zařízení byla přidána možnost, která zabrání použití přepínačů pro ztlumení mikrofonu a kamery.
    • Pro aplikace CDM (Companion Device Manager) běžící na pozadí, které ovládají doprovodná zařízení, jako jsou chytré hodinky a fitness trackery, je možné spouštět služby na popředí.
    • Namísto edice pro nositelná zařízení se Android Wear společně se Samsungem rozhodl vyvinout novou jednotnou platformu, která kombinuje možnosti Androidu a Tizenu.
    • Možnosti edic Androidu pro automobilové infotainment systémy a chytré televizory byly rozšířeny.

    Zdroj: opennet.ru

  • Přidat komentář