Google avaldas avatud mobiilse platvormi Android 14. Uue vÀljaande seotud lÀhtekoodid on paigutatud projekti Git-repositooriumisse (haru android-14.0.0_r1). KÔikide Pixel-seeria seadmete jaoks on saadaval tarkvarauuendused. Hiljem on plaanis vÀlja töötada tarkvarauuendused Samsung Galaxy, iQOO, Nothing, OnePlus, Oppo, Realme, Sharp, Sony, Tecno, vivo ja Xiaomi nutitelefonide jaoks. Lisaks on loodud universaalsed GSI (Generic System Images) kogud, mis sobivad erinevatele seadmetele, mis pÔhinevad ARM64 ja x86_64 arhitektuuridel.
PÔhilised uuendused:
- Platvormi peamisesse koosseisu on lisatud Health Connecti salvestusruum, mis varem oli saadaval eraldi paketina Google Play kaudu. Health Connect vĂ”imaldab keskset andmesalvestust tervisega seotud seadmetelt, nagu fitness-kellad, ning korraldab erinevate rakenduste ligipÀÀsu terviseandmetele. LigipÀÀs Health Connecti sĂ€tetele antakse nĂŒĂŒd platvormi mÀÀrangute kaudu, vĂ”imaldades nĂ€iteks privaatsuse seadete kaudu hallata, millistele terviseandmetele konkreetsetel rakendustel on juurdepÀÀs. Lisaks on Health Connect toetanud treeningu ajal lĂ€bitud marsruudi salvestamist (kasutaja mÀÀrab ajavahemiku, mille jooksul salvestatakse vahepunktide nimekiri). Marsruuti saab kaardil visualiseerida ja soovi korral edastada töötlemiseks teistele rakendustele pĂ€rast kasutaja selget kinnitust.

- Asjakohase juurdepÀÀsu kinnitamise meetodid on laienenud. Asukoha juurdepÀÀsu kinnitamise dialooge on lisatud uus jaotis, kus antakse teavet selle kohta, millal rakendus edastab asukohainfot (juurdepÀÀs keelatud, lubada ainult kord ja lubada iga rakenduse kÀivitamisel) ning lisainformatsiooni saadavuse kohta edastatavate andmete juurdepÀÀsu kohta.

- On rakendatud regulaarseid (ĂŒks kord kuus) teatiste vĂ€ljundit, et hoiatada asukohainfot kasutavate rakenduste muutustest, mis edastavad andmeid kolmandatele isikutele (nĂ€iteks teatatakse, kui rakendus hakkab asukohandmeid reklaami kuvamiseks kasutama).

- Rakenduste kasutamise korral on rakendatud silmatorkav tagasipöörde nupp, mis nÀidatakse, et hÔlbustada ekraanil toimingute tagastamise mÔistmist.

- Sharesheet'i mehhanismis, mida kasutatakse andmete (nt piltide vÔi linkide) saatmiseks rakendusest vÀljapoole vÔi teisele kasutajale, on rakendatud vÔimalus lisada oma tegevusi. NÀiteks saab mÀÀrata oma valiku ChooserAction töötlejatest, mis nÀitavad rakendusi ja kasutajaid, kellele on vÔimalik saatmine. TÀiendavalt on laienenud signaalide spekter, mida kasutatakse sihtkohtade jÀrjestamiseks andmete otseseks saatmiseks.

- On antud vĂ”imalus osalise juurdepÀÀsu mÀÀramiseks, et kasutaja saaks valida, millised fotod ja videod on kĂ€ttesaadavad (READ_MEDIA_VISUAL_USER_SELECTED; failid, millele antakse juurdepÀÀs, valib kasutaja Photo picker'i liideses, kui toimub lubade taotlemise dialoog). PĂ€rast rakenduse taustale viimist vĂ”i sulgemist tĂŒhistatakse kasutaja antud luba automaatselt. Rakenduste juurdepÀÀsu multimeediafailidele kinnitamise dialoogis on nĂŒĂŒd vĂ”imalik anda juurdepÀÀs ainult valitud fotodele vĂ”i videotele.

- Konfiguraatorisse on lisatud piirkondlike eelistuste seadete ĂŒlekirjutamise sektsioon, nagu temperatuuri mÔÔtĂŒhikud, nĂ€dala esimene pĂ€ev ja numbriskeem. NĂ€iteks USA-s elav eurooplane saab seadistada, et temperatuur kuvatakse Celsiuse kraadides, mitte Fahrenheiti kraadides, ning arvestada esmaspĂ€eva nĂ€dalalooja pĂ€evana, mitte pĂŒhapĂ€eva.

- Font scaling capabilities have been enhanced, with the maximum font scaling level increased from 130% to 200%. To ensure that text does not appear too large at significant scaling, a nonlinear adjustment to scaling is now applied (larger text scales less than smaller text), which will achieve optimal text readability for individuals with visual impairments without risking layout distortions.

- Eelmises versioonis saadud HDR (kĂ”rge dĂŒnaamilise ulatuse) videote salvestamise tugi on laiendatud kaamera tĂ€iendava teabe hankimise vĂ”imalustega, mis vĂ”imaldab salvestada pilte "Ultra HDR" formaadis, kus vĂ€rvide kodeerimiseks kasutatakse 10 biiti kanali kohta. Ultra HDR formaat on tĂ€ielikult ĂŒhilduv JPEG-iga, vĂ”imaldades rakendustel töötada HDR-piltidega ilma muudatusteta ja vajadusel neid kuvada tavapĂ€rases heleduse ulatuses. HDR-reĆŸiimis vĂ€ljund toimub automaatselt, kui rakenduse manifestis aktiveeritakse HDR tugi vĂ”i kutsutakse esile Window.setColorMode. Ultra HDR eraldi joonistamiseks OpenGL-i vĂ”i Vulkan'i abil vĂ”ib kasutada klassi Gainmap.

- RakendustĂŒĂŒpide arv, millele on lubatud ekraanivĂ€lised teated, on piiratud. Sellised teated on mĂ”eldud kasutaja tĂ€helepanu juhtimiseks infole, mis vajab kiiret reageerimist, nagu nĂ€iteks sissetulev kĂ”ne vĂ”i Ă€ratuskella helistamine. SeetĂ”ttu saavad selliseid teateid edastada ainult kĂ”neaegade ja hĂ€irete rakendused.
- Animatsiooni haldust, mis nĂ€itab ĂŒleminekut erinevate ekraanide (lehtede) vahel liugjerge abil, on parandatud. Uued elemendid on lisatud all- ja kĂŒlggiekranide ĂŒleminekute animatsiooniks, samuti otsingu aktiveerimiseks. Lisatud on API, et luua kohandatud ĂŒleminekuefekte rakenduses.
- Austatud kaameralaienduste komplekti (Camera Extensions) on vĂ€rskendatud, lisades vĂ”imaluse kasutada pikemaid algorĂŒtme, mis vajavad intensiivset arvutusvĂ”imet piltide töötlemiseks, nĂ€iteks madala valgustuse korral tehtud piltide kvaliteedi parandamiseks. Lisatud on funktsioonid pilditöötluse viivituste ennustamiseks, töötlemise edusammude jĂ€lgimiseks ja kiireks toorversiooni saamiseks enne lĂ”pliku pildi ettevalmistamist. Investeeritud on optimeeritud ja energiatĂ”husasse SurfaceView eelvaate reĆŸiimi. Laienduste kasutamise ajal toetatakse puutejuhtimist fookuse seadmiseks ja suumimiseks.
- Toetatakse kaamera sisseehitatud vÔimaluste kasutamist RAW-piltide suumimiseks ja kadreerimiseks.
- USB kaudu ĂŒhendatud juhtmete kĂ”rvaklappidele on lisatud vĂ”imalus kasutada hĂ€lose formaate (lossless). API-sse on lisatud klass AudioMixerAttributes, mis vĂ”imaldab edastada heli otse seadmesse ilma segamise, helitugevuse reguleerimise ja efektide töötlemiseta.
- Graafilises API-s on rakendatud klass Mesh, mis vĂ”imaldab luua oma versioone polĂŒgoonvĂ”rgust, kasutades tipp- ja fragment-ĆĄeidereid, mis on kirjutatud keeles AGSL.
- Lisatud on riistvarakiirenduse vÔimalus, mis vÔimaldab joonistamist puhvrisse klassi HardwareBufferRenderer kaudu.
- Path klassi, mis vÔimaldab luua vektorgraafikat komposiitgeomeetriliste kontuuride pÔhjal, on saanud toe kontuuride vahelise interpolatsiooni jaoks sarnase struktuuri loomiseks, et saavutada morfingu efekt ja kasutada PathIterator'i, et jÀrjestikku lÀbi vaadata kÔik kontuuri segmendid.
- Sellel on laiendatud vÔimalused eraldi keele seadete sidumiseks erinevatele rakendustele. On antud vÔimalus mÀÀrata keelte nimekiri, mis kuvatakse Androidi konfiguratsioonis, kui valitakse konkreetse rakenduse jaoks keel.
- Kohad, kus sĂŒsteem nĂ€itab arendaja Play Console vormis mÀÀratletud privaatsusteavet, nĂ€iteks andmete jagamise poliitika kolmandate osalistega, on laiendatud. NĂ€iteks kuvatakse sellised andmed nĂŒĂŒd volituste taotlemise dialoogis.
- Rakendustes, mis kasutavad taustateenuste töötlejate, on nĂŒĂŒd kohustuslik mÀÀrata taustateenuse tĂŒĂŒp. SĂŒsteem kontrollib töötamise ajal mÀÀratud teenuse tĂŒĂŒbi, nĂ”utud volituste ja kasutatava API vastavust. NĂ€iteks kui rakendus on mÀÀranud taustateenuse tĂŒĂŒbiks FOREGROUND_SERVICE_TYPE_LOCATION, tĂ€hendab see, et tal vĂ”ivad olla nĂ”utud volitused ACCESS_COARSE_LOCATION vĂ”i ACCESS_FINE_LOCATION.
- Tehtud on muudatusi turvalisuse suurendamiseks: rakendustel on keelatud saata intent-kutseid teatud platvormi sisemistele komponentidele. DĂŒĂŒnaamiliselt laaditav kood peab nĂŒĂŒd olema mĂ€rgistatud ainult lugemiseks mĂ”eldud ligipÀÀsu atribuudi kaudu. Funktsioonides ZipFile(String) ja ZipInputStream.getNextEntry() on keelatud töödelda zip-arhiive, mille teed algavad sĂŒmbolist "/" vĂ”i sisaldavad jada "..". Taustateenustest töötamise kĂ€ivitamine on piiratud ning on vĂ€rskendatud piiranguid API-dele, mida SDK-s ei ole saadaval.
- USB kaudu lauaarvutiga ĂŒhendamata on nĂŒĂŒd saadaval lisaks varasemate suhete, nagu failide ĂŒlekandmine, laadimine, interneti jagamine jne, ka vĂ”imalus kasutada nutitelefoni veebikaamerana (UVC, USB Video Class reĆŸiim). Vaikimisi on see funktsioon keelatud, kuid seda saab aktiveerida, kui omada root-juurdepÀÀsu.
- Tööd jĂ€tkatakse platvormi tĂ€iustamiseks tahvelarvutites ja kokkukĂ€idavates seadmetes. On tagatud raamatukogud, mis toetavad osutaja liikumisega seotud sĂŒndmuste ennustamist ning pakuvad madalat latentsusaega pliiatsi kasutamisel. Suure ekraaniga rakenduste jaoks on saadaval liidese mallid, mis arvestavad selliste kasutusvaldkondadega nagu sotsiaalmeedia, suhtlemine, multimeedia sisu ja ostlemine.
- Lisatud eraldi volitus rakendustele, et anda neile vÔimalus toimingute kÀivitamiseks, kui rakendus on taustal. Taustal toimimise aktiveerimine on piiratud, et kasutaja ei oleks hÀiritud, kui ta töötab aktiivse rakendusega. Aktiivsetele rakendustele on antud rohkem vÔimalusi kontrollida teiste rakenduste tegevuse aktiveerimist, millega nad suhtlevad.
- Optimeeritud mĂ€luhaldussĂŒsteem, et rakendustele, mis töötavad taustal, ressursse tĂ”husamalt eraldada. MĂ”ni sekund pĂ€rast rakenduse viimist vahemĂ€llu piirdub taustatöö API-dega, mis haldavad rakenduse elutsĂŒklit, nagu Foreground Services API, JobScheduler ja WorkManager.
- Teated, millel on lipp FLAG_ONGOING_EVENT, saab nĂŒĂŒd tagasi lĂŒkata, kui need kuvatakse seadmes, millel on ekraan avatud. Kui seade on lukustatud, jÀÀvad sellised teated tagasi lĂŒkkamatuks. Samuti jÀÀvad tagasi lĂŒkkamatuks teated, mis on sĂŒsteemi toimimiseks olulised.
- API PackageInstaller on lisatud uued meetodid: requestUserPreapproval(), mis vĂ”imaldab rakenduste kataloogil APK-pakettide allalaadimist edasi lĂŒkata kuni kasutaja installeerimise kinnituse saamiseni; setRequestUpdateOwnership(), mis vĂ”imaldab paigaldajal tulevased rakenduse uuendamise toimingud omale kinnistada; setDontKillApp(), mis annab rakendusele tĂ€iendavad vĂ”imalused töötamise ajal programmi haldamisel. API InstallConstraints annab paigaldajatele vĂ”imaluse aktiveerida rakenduse uuendamise paigaldamine hetkedel, kui rakendust ei kasuta.
- Tööd jĂ€tkatakse platvormi töö parendamiseks tahvelarvutites ja kokkuklapitavates seadmetes. Uuendatud on soovitusi rakenduste arendamiseks suurte ekraanidega seadmete jaoks ning lisatud on tĂŒĂŒpilised liidese mallid suurte ekraanide jaoks, mis arvestavad selliste rakendustega nagu sotsiaalmeedia, suhtlemine, multimeedia sisu, lugemine ja ostmine. Eelversion Cross device SDK-st on vĂ€lja pakutud tööriistadega rakenduste arendamiseks, mis töötavad korralikult erinevat tĂŒĂŒpi seadmete (nutitelefoni, tahvelarvutite, nutitelerite jne) ja erinevate vormifaktoritega.
- RessursinĂ”udlikest taustatööde, nagu suurte failide allalaadimine Wi-Fi-ĂŒhenduse olemasolul, koordinaatsiooni optimeerimine on lĂ€bi viidud. Prioriteetsete teenuste (Foreground Service) ja ĂŒlesannete ajastamise (JobScheduler) API-sse on lisatud muudatusi, mis toovad uut funktsionaalsust kasutajate poolt kĂ€ivitatavatele andmeedastustöödele. On kehtestatud nĂ”uded kĂ€ivitatavate prioriteetsete teenuste tĂŒĂŒbi (nt kaamera kasutamine, andmete sĂŒnkroonimine, meedia esitamine, asukoha jĂ€lgimine, mikrofoni kasutamine jne) nĂ€itamiseks. Andmete allalaadimise aktiveerimise tingimuste mÀÀratlemine on tehtud lihtsamaks, nĂ€iteks allalaadimine ainult Wi-Fi-ĂŒhenduse kaudu.
- Rakenduste sisemine laiemate teadete edastamise sĂŒsteem (broadcast system) on optimeeritud energiatarbimise vĂ€hendamiseks ja reageerimisvĂ”ime suurendamiseks. Parandatud on rakendustele registreeritud sĂ”numite vastuvĂ”tmist â sĂ”numid vĂ”ivad minna jĂ€rjekorda, liituda (nĂ€iteks BATTERY_CHANGED sĂ”numite seeria koondatakse ĂŒheks) ja edastatakse ainult pĂ€rast rakenduse vĂ€ljumist vahemĂ€lust.
- Suurenenud maksimaalselt vahemĂ€llu salvestatud rakenduste piir, mis on vĂ”imaldanud vĂ€hendada âkĂŒlmadesâ tingimustes kĂ€ivitatavate rakenduste arvu (st mitte vahemĂ€lus salvestatud ja seetĂ”ttu aeglasemalt kĂ€ivitatavad). 8 GB RAM-iga seadmete puhul on piirangute muutumisega âkĂŒlmadeâ rakenduste kĂ€ivitamiste arv vĂ€henenud 20%, ning 12 GB juures 30%.
- Aegade tĂ€psete alarmide (exact alarms) töötlemiseks rakendustes on nĂŒĂŒd vajalik eriline luba SCHEDULE_EXACT_ALARM, kuna selle funktsiooni kasutamine vĂ”ib negatiivselt mĂ”jutada seadme aku kasutusaega ja suurendada ressursside tarbimist (ajastatud ĂŒlesannete puhul soovitatakse kasutada umbkaudset aktiveerimist). Kalendri ja kellade rakendustel, mis kasutavad tĂ€pset ajastamist, peab installimisel olema lubatud USE_EXACT_ALARM. Google Play kataloogis tohib USE_EXACT_ALARM lubadega rakendusi avaldada vaid siis, kui need sisaldavad Ă€ratuskella, taimerit ja kalendriteatisi.
- Kasutajatele on antud vĂ”imalus mÀÀrata keelesĂ€tteid, mis on seotud ĂŒksikute rakendustega. Rakenduse arendaja saab nĂŒĂŒd muuta localeConfig parameetreid, kasutades LocaleManager.setOverrideLocaleConfig, et mÀÀrata rakenduse seadistuse liideses nĂ€idatavate keelte loetelu.
- Lisatud on grammatiline infleksiooni API, et lihtsustada keeleelementide tĂ”lgete lisamist, arvestades soolisĂŒsteemiga keeli.
- Kurtude rakenduste pahatahtliku sissetungi vÀltimiseks on uues versioonis keelatud intentide saatmine ilma paketi vÔi sisemise komponendi selge mÀrkimiseta.
- DĂŒnaamilise koodi laadimise (DCL, Dynamic Code Loading) turvalisust on suurendatud â pahatahtliku koodi asendamisse dĂŒnaamiliselt laaditavatesse tĂ€itmisfailidesse vĂ€ltimiseks peavad need failid nĂŒĂŒd olema lugemisĂ”igustega.
- Rakenduste installimine, mille SDK versioon on madalam kui 23, on keelatud, et takistada Ă”iguse piirangute ĂŒmbersuunamist vanade API-de sidumise kaudu (API versioon 22 on keelatud, kuna versioonis 23 (Android 6.0) rakendati uut juurdepÀÀsu haldamise mudelit, mis vĂ”imaldab reaalajas taotleda juurdepÀÀsu sĂŒsteemiressurssidele). Varem installitud rakendused, mis kasutavad vanu API-sid, jĂ€tkavad pĂ€rast Androidi uuendamist oma töö tegemist.
- Pakutakse API Credential Manager, mis vÔimaldab rakendustes sisse logida vÀlistest autentimisteenustest saadud mandaate kasutades. Toetatakse Passkey tehnoloogiat, mis vÔimaldab kasutajal autentida end paroolideta, kasutades biomeetrilisi identifikaatoreid, nagu sÔrmejÀlg vÔi nÀotuvastus. Parendatud on konto valiku liides.
- Android Runtime'is (ART) on sisse viidud OpenJDK 17 tugi. Platvormi pĂ”hilised Java raamatukogud ja rakenduste arendustooted on uuendatud OpenJDK 17-le. Lisatud on OpenJDK 17-s saadaval olevate keele omaduste ja Java klasside, nagu record tĂŒĂŒpi klassid, mitmereadilised stringid ja pattern matching 'instanceof' lauses, tugi.
- Android Runtime'is on rakendatud arenenumaid pakkimismeetodeid, mis on vÔimaldanud vÀhendada failide suurust keskmiselt 9,3% ilma jÔudluse kahjustamiseta.
- Muudetud on sertifikaatidega keskuste (CA) sertifikaatide uuendamise formaati. SĂŒsteemi sertifikaate ei seota enam fikseeritud tarkvaraga, vaid need edastatakse eraldi paketina, mille uuendamine toimub lĂ€bi Google Play. See lĂ€henemine lihtsustab sertifikaatide ajakohasena hoidmist ja kompromiteeritud sertifikaatide eemaldamist, samuti ei lase seadme tootjatel manipuleerida juuresertifikaatide loendiga ja muudab nende uuendamise protsessi sĂ”ltumatuks tarkvarauuendustest. Teiselt poolt, uus edastamismeetod ei vĂ”imalda kasutajal teha muudatusi sĂŒsteemi sertifikaatides, isegi kui tal on root-juurdepÀÀs ja ta kontrollib tĂ€iesti tarkvara.
Allikas: opennet.ru









