Google tutvustas avatud mobiilse Android 12 platvormi teist testversiooni. Android 12 väljalaskmine on planeeritud 2021. aasta kolmandasse kvartalisse. Platvormi uute funktsioonide hindamiseks on käivitatud beetatestimise programm. Firmware'i kogumikud on ette valmistatud Pixel 3 / 3 XL, Pixel 3a / 3a XL, Pixel 4 / 4 XL, Pixel 4a / 4a 5G ja Pixel 5 seadmete jaoks. Esimese beetaversiooni installinud kasutajatele on saadaval OTA-uuendus.
Android 12 põhifunktsioonid:
- Lisatud on kasutajaliidese elementide kohandamise võimalus ümarate ekraanidega seadmetele. Arendajad saavad nüüd teavet ekraani ümarate nurkade kohta ning kohandada liideselemente, mis satuvad nähtamatutesse nurkadesse. Uue API kaudu RoundedCorner on võimalik teada saada selliseid parameetreid nagu raadius ja ümaruse keskus, ning Display.getRoundedCorner() ning WindowInsets.getRoundedCorner() abil määrata iga ümarat nurka ekraanil.

- PIP-režiim (Picture in Picture) on täiustatud, samuti on parandatud üleminekuefektide sujuvust. Kui automaatne üleminek PIP-režiimile aktiveeritakse üles-poole suunatud žestiga (ekraani alumise osa ülespoole liigutamine), lülitub rakendus nüüd kohe PIP-režiimi, ootamata animatsiooni lõppu. PIP-akna suuruse muutmine, kui sisu erineb videost, on paranenud. Lisatud võimalus PIP-aken peita, tõmmates selle vasakule või paremale ekraani äärde. Muudetud on käitumist PIP-akna puudutamisel: ühekordne puudutus kuvab juhtnuppe, samas kui kahekordne muudab akna suurust.
- Uus API CompanionDeviceService on lisatud, millega saab aktiveerida rakendusi, mis haldavad kaasnevaid seadmeid, nagu nutikellad ja aktiivsusmonitorid. API lahendab probleemid, mis on seotud vajalike rakenduste käivitamise ja ühendamisega, kui kaasnevat seadet on läheduses. Süsteem aktiveerib teenuse, kui seade on läheduses, ja saadab teavituse seadme väljalülitamisel või kui seade siseneb või lahkub nähtavuse piirkonnast. Rakendused saavad samuti kasutada uut kaasnevate seadmete profiili, et lihtsustada loa seadistamist seadmega liitumiseks.
- Parandatud on läbilaskevõime ennustamissüsteemi. Rakendused saavad nüüd küsida prognoositud koguläbilaskevõimet operaatori, konkreetse traadita võrgu (Wi-Fi SSID), võrgu tüübi ja signaali taseme järgi.
- Lihtsustatud on tavaliste visuaalefektide rakendamine, nagu hägustamine ja värvide moonutamine, mis on nüüd API RenderEffect abil kohandatavad iga RenderNode objekti või kogu nähtava ala kohta, sealhulgas koos teiste efektidega. Näiteks võimaldab see hägustada pilti, mis on kuvatud ImageView kaudu, ilma et oleks vaja selgelt koopiat teha, töödelda ja bitmape asendada, viies need toimingud platvormile. Täiendavalt on pakkuda saanud API Window.setBackgroundBlurRadius(), millega saab akna tausta hägustada mattklaasiefekti abil ja tõsta esile sügavust, hägustades akent ümbritsevat ruumi.

- Integreeritud on tööriistad multimeedia voogude dekodeerimiseks, mida saab kasutada kaamerarakendustes, mis salvestavad video HEVC formaadis, et tagada ühilduvus rakendustega, mis seda formaati ei toeta. Selliste rakenduste jaoks on lisatud automaatse dekodeerimise funktsioon rohkem levinud AVC formaati.
- On lisatud AVIF (AV1 pildiformaat) pildifailide tugi, mis kasutab video kodeerimise AV1 tehnoloogia sisemist kompressiooni. AVIF-i tihendatud andmete konteiner on täielikult analoogne HEIF-iga. AVIF toetab nii HDR (kõrge dünaamiline ulatus) ja laia värvigammi, kui ka standardset dünaamilist ulatust (SDR).
- Rakenduste võimalike jõudlusprobleemide vältimiseks on keelatud käivitada esmajärgulisi teenuseid (foreground service) taustatöös, välja arvatud mõned erilised juhtumid. Taustatöös töötamise korral soovitatakse kasutada WorkManagerit. Ülemineku lihtsustamiseks on JobScheduleris tutvustatud uusi tööde tüüpe, mis käivituvad koheselt, omavad kõrgendatud prioriteeti ja juurdepääsu võrku.
- Pakutud on ühtne API OnReceiveContentListener, mis võimaldab sisestada ja liigutada erinevate rakenduste vahel täiustatud sisu tüüpe (vormindatud tekst, pildid, videod, helifailid jne), kasutades erinevaid andmeallikaid, sealhulgas lõikepõhist, klaviatuuri ja lohista ning loob.
- Lisatud on efekt, mis saavutatakse telefonidesse sisseehitatud vibratsioonimootori abil, mille vibratsiooni sagedus ja intensiivsus sõltuvad hetkel esitatava heli parameetritest. Uus efekt võimaldab füüsiliselt tunda heli ning seda saab kasutada mängude ja heliprogrammide lisarealistuse saavutamiseks.
- Sukeldumisseisundis (Immersive mode), kus rakendus kuvatakse täisekraanil koos abipaneelide varjamisega, on navigeerimine lihtsustatud juhtimisžestide abil. Näiteks e-raamatute lugemise, videote vaatamise ja fotode töötlemise rakendustes saab nüüd liikuda ühe pühkimise žestiga.
- Kasutajaliidese teate kuvamise kujundus on värskendatud, et seda muuta lihtsamaks ja funktsionaalsemaks. Samuti on uuendatud ja sujuvamaks muudetud animaatsioonid ja üleminekuefektid. RAKENDUSE määratud sisu teate üldine välimus on viidud korrastatud taas.
- Parandatud on reageerimisvõimet ja kiirus, kui tegeletakse teatistega. Näiteks, kui kasutaja puudutab teadet, toimub nüüd kohe sujuv üleminek seotud rakendusele. Rakendustes on piiratud vahepealsete teatiste käitlejate (notification trampoline) kasutamine.
- IPC-kõnede optimeerimine Binderis on lõpule viidud. Uue vahemälu strateegia ja blokeeringute konfliktide kõrvaldamise abil on õnnestunud oluliselt vähendada viivitusi. Üldiselt on Binderi kõnede jõudlus kahekordistunud, kuid mõnedes valdkondades on saavutatud veelgi suuremad kiiruselt tõusud. Näiteks on refContentProvider() kõne kiirus kasvanud 47 korda, releaseWakeLock() 15 korda ja JobScheduler.schedule() 7,9 korda.
- Mainline'i projekti raames, mis võimaldab eraldi süsteemikomponente värskendada ilma kogu platvormi värskendamata, on ette valmistatud uued värskendatavad süsteemimoodulid lisaks Android 11-s saadaval olevatele 22 moodulile. Värskendused puudutavad riistvarast sõltumatuid komponente, mis laaditakse Google Play kaudu eraldi tootja OTA-firmware värskendustest. Uute moodulite hulka, mis saavad värskendatud Google Play kaudu ilma firmware'i värskendamiseta, kuuluvad ART (Android Runtime) ja videotöötlusmoodul.
- Turvalisus ja privaatsus.
- Rakenduste arendajatel on võimalus keelata teatiste hüpikaknad, mis katavad sisu. Varem reguleeriti katvate akende kuvamist volituste taotlusega, mis kinnitati rakenduste installimise ajal, mis neid aknaid kuvavad. Ei olnud tööriistu, mis võimaldaksid mõjutada sisu katmist rakendustest, mille aknad on katnud. Kui kasutada kätet Window#setHideOverlayWindows(), siis kõik sisu katvad aknad peidetakse nüüd automaatset. Näiteks võib peitmine käivituda siis, kui kuvatakse äärmiselt olulist teavet, nagu tehingu kinnitamine.
- Rakendustele on lisatud täiendavad seaded, et piirata teavituste toimingute sooritamist lukustatud ekraani ajal. Varem oli saadaval vaid teavituste nähtavuse haldamise võimalus lukustatud ekraani ajal, kuid nüüd on võimalik nõuda kohustuslikku autentimist teavitustega seotud toimingute sooritamiseks lukustatud ekraani ajal. Näiteks võib sõnumirakendus nõuda autentimist enne sõnumi kustutamist või loetuks märkimist.
- Lisatud on API PackageManager.requestChecksums() installitud rakenduse kontrollsummade taotlemiseks ja kontrollimiseks. Toetatakse selliseid algoritme nagu SHA256, SHA512 ja Merkle Root.
- WebView'i veebimootoris on rakendatud SameSite atribuudi kasutamise võimalus küpsiste töötlemise haldamiseks. "SameSite=Lax" väärtus piirab küpsiste saatmist kolmandate osapoolte alamsaadetesse, nagu pildi taotlemine või sisu laadimine iframe'i kaudu teiselt saidilt. Režiimis "SameSite=Strict" ei saadeta küpsiseid ühegi tüüpi kolmandate osapoolte taotlustega, sealhulgas kõikide väliste saitide sissejuhatavad lingid.
- Tööd MAC-aadresside randomiseerimise nimel jätkatakse, et vältida seadme jälgimist traadita võrku ühendamisel. Tavaliste rakenduste jaoks on juurdepääs seadme MAC-aadressile piiratud, ja funktsionaalsuse getHardwareAddress() väljakutsumisel tagastatakse nüüd tühi väärtus.
Allikas: opennet.ru


