12. Oct 2021
AndroidAndroid 12 - Čo je nové pre vývojárov?
21. októbra bolo oficiálne vydanie systému Android 12 pushnuté na AOSP. Aké novinky prináša vývojárom? Vybrali sme pre nás najzaujímavejšie zmeny usporiadané do viacerých logických celkov.
Používateľské rozhranie
Material You
Nové dizajn guidelines s názvom Material You, ktoré boli predstavené spolu s novou verziou systému Android na vytváranie personalizovaných aplikácií. Podpora pre Jetpack Compose bude čoskoro k dispozícii, ale môžete vyskúšať alfa knižnicu material komponentov s komponentmi kompatibilnými s Material You.
Nové Widgety a Notifikácie
Widgety prišli s novým spracovaním, aby boli užitočnejšie a vizuálne príťažlivejšie. Widgety v Android 12 majú zaoblené rohy a pozadie widgetov sa automaticky orezáva. Bola pridaná nová podpora pre stavové správanie pomocou CheckBox, Switch a RadioButton.
Notifikácie majú taktiež aktualizovaný dizajn, aby vyzerali modernejšie. Predtým mohli custom notifikácie využívať celý priestor upozornení s vlastným rozložením. Štandardné šablóny teraz zaisťujú, že custom notifikácie majú rovnakú rozloženie ako ostatné oznámenia (ikona upozornenia, názov aplikácie ...).
Stretch overscroll
Android 12 pridáva nový efekt pre zoznamy s názvom "stretch overscroll". Obsah skrolujúceho kontajnera sa natiahne a odrazí späť pri drag evente.
Úvodné obrazovky
Android 12 predstavil nové API SplashScreen. Mnoho aplikácií implementovalo vlastnú úvodnú obrazovku prostredníctvom aktivity alebo pomocou štýlu windowsBackground. V prípade Android 12 by ste mali migrovať na rozhranie SplashScreen API a zaistiť, aby sa všetko zobrazovalo správne. Bez migrácie môže systém do vašej aplikácie vložiť predvolenú úvodnú obrazovku, čo má za následok dve po sebe nasledujúce úvodné obrazovky.
Výkon 🚀
Optimalizácia služieb v popredí
Aplikácie zacielené na Android 12 nemôžu spustiť službu v popredí, zo sluzby, ktorý beží v pozadí (existuje niekoľko výnimiek, ako napríklad získanie správy s vysokou prioritou z FCM).
Performance triedy
Aplikácie môžu skontrolovať performace class zariadenia a zistiť tak jeho možnosti. Každé zariadenie Android by malo deklarovať performance class, ktorú podporuje. Vývojár môže za behu kontrolovať možnosti zariadenia a poskytovať lepší zážitok pre výkonnejšie zariadenia.
Súkromie
Privacy dashboard
V systémových nastaveniach môžeme ponovom nájsť privacy dashboard. Užívateľ má prístup k informáciám o tom, kedy majú aplikácie prístup k polohe, fotoaparátu alebo mikrofónu. Vývojári by mali používateľom poskytnúť odôvodnenie, aby pochopili, prečo sú tieto informácie pre nich potrebné.
Približná poloha
Používatelia teraz môžu udeliť iba približnú polohu, aj keď aplikácia požadovala presné umiestnenie. Ak aplikácia požaduje iba približnú polohu, ale nie presnú, tak táto zmena na neho nemá vplyv. Keď aplikácia potrebuje prístup k presnému umiestneniu, musí tiež požiadať o povolenie na hrubé umiestnenie v rámci jednej runtime request. Dialógové okno s povolením sa zobrazuje, keď aplikácia požaduje presné aj približné umiestnenie a je zacielené na Android 12 a vyšší.
Indikátory mikrofónu a fotoaparátu
Na zariadeniach so systémom Android 12 alebo novším sa pri prístupe aplikácie ku kamere alebo mikrofónu zobrazí ikona v stavovom riadku (pravý horný roh).
User experience nástroje
Rich content insertion
Vývojár môže k komponentu používateľského rozhrania pripojiť rozhranie s názvom OnReceiveContentListener a získať callback, keď používateľ vloží obsah vložený zo schránky alebo presunutím myšou. Toto API je k dispozícii aj v beta verzii AndroidX kvôli spätnej kompatibilite s predchádzajúcimi verziami systému Android.
Rounded screens support
Na dodanie krásneho UX na zariadeniach so zaoblenými rohami je možné použiť nové API na dopyt po podrobnostiach o zaoblení.
Blurs
S Android 12 vývojár získava kontrolu nad grafickým efektom aplikovaným na Views napr. RenderEffect API. Toto API poskytuje možnosť vytvárať rozmazané priehľadné pozadie v Views, používať farebné filtre v Views a ďalšie.
Vylepšená haptika
Android 12 provides tools to create informative haptic feedback for UI events or immersive effects for gaming or productivity. Android 12 poskytuje nástroje na vytváranie informatívnej haptickej odozvy na udalosti používateľského rozhrania alebo na efekty pri hranií hier alebo pri produktivite.
Ako pripraviť aplikácie pre Android 12?
- privacy dashboard - na tomto informačnom paneli v systémových nastaveniach skontrolujte prístup k mikrofónu, polohe alebo iným citlivým údajom a zdôvodnenie pre používateľov
- indikátor mikrofónu a kamery - skontrolujte, či indikátor neovplyvňuje vaše používateľské rozhranie
- upozornenie na čítanie clipboardu- sledujte toast bar, ak vaša aplikácia neočakávane číta údaje zo schránky, a odstráňte tieto prístupy
- stretch overscroll - zaistite, aby sa obsah zobrazoval podľa očakávania s overscroll efektom
- app splash screen - skúste spustiť aplikáciu (studený štart, horúci štart, priamy odkaz ...) a skontrolujte, či úvodná obrazovka vyzerá podľa očakávania a či sa nezobrazuje dvakrát