Google avaldas avatud mobiilse platvormi Android 17. Seotud uue vÀljaande lÀhtekoodid on avaldatud projekti Git-repositooriumis (haru android-17.0.0_r1). TÀiendavad tarkvara koospakkumised on loodud seadmetele Pixel 6/6a/6 Pro, Pixel 7/7a/7 Pro, Pixel 8/8a/8 Pro, Pixel 9/9a/9 Pro/9 Pro XL/9 Pro Fold, Pixel 10/10 Pro/10 Pro XL/10 Pro Fold, Pixel Fold ja Pixel Tablet. Eeltöötavad tarkvara versioonid on saadaval seadmetele HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo ja Xiaomi. Universaalsete koospakkumiste GSI (Generic System Images) tegemine on kÀimas, sobides erinevatele seadmetele, mis pÔhinevad ARM64 ja x86_64 arhitektuuridel.
Muudatuste seas (1, 2, 3):
- Lisa uus mitme akna reĆŸiim â "Bubbles", mis vĂ”imaldab kĂ€ivitada kĂ”ik rakendused ujukvates akendes, mis meenutavad teave, mis kuvatakse teise sisu kohal sĂ”numite saatmiseks ("mullid"), kuid ei ole seotud spetsialiseeritud API-dega. Rakenduse avamine ujukvas aknas toimub rakenduse ikoonile vajutades ja hoides. Suurtel ekraanidel kuvatakse ujukakende ikoonid eraldi alal tegumiribal. Sellised aknad on rĂŒhmitatavad, liigutatavad ja ekraanile kinnitatavad.

- Platvormi arendamine suure ekraaniga seadmete jaoks, nagu tahvelarvutid, sĂŒlearvutid, lauaarvutid ja nutitelefonid, millel on kokkupandavad ekraanid, jĂ€tkub. Eemaldatud on varem kehtinud valikud, et keelata uue kĂ€itumise rakendamine seadmetes, mille ekraani laius on ĂŒle 600 tingliku pikslite (dp), seoses mĂ”nede API-de ignoreerimisega ekraani suuruse ja suuna muutmise haldamisel (screenOrientation, resizeableActivity, [min|max]AspectRatio), samuti rakenduste kohandatud paigutamisega akendes, mis vĂ”imaldavad suuruse muutmist ja ekraanil liikumist.


- Lisa sĂŒsteemi API EyeDropper API, millega rakendus saab teavet mis tahes ekraanil oleva pikslite vĂ€rvi kohta ilma vajaduseta saada volitusi ekraani jÀÀdvustamiseks. Turvalisus tagatakse, kuna kasutaja valib ise vĂ€rvi mÀÀramise ala platformi juhtimise all oleva liidese kaudu, kus on "pipett", mis ei kuulu rakenduse kontrolli alla, st rakendus ei saa kĂŒsida teavet konkreetse pikslite kohta ja pikslite kaupa taasluua ekraanisisu.

- Lisatud on sĂŒsteemne kontaktide valimise kasutajaliides, millele pÀÀseb juurde ACTION_PICK_CONTACTS Ă”iguste saamisel. See liides vĂ”imaldab vĂ€ltida READ_CONTACTS Ă”iguste andmist, mis lubab lugeda kĂ”iki kontaktandmeid. Uue liidese kasutamisel teeb kasutaja otsuse, millist teavet kontaktide nimekirjast rakendusele edastada, valides ainult teatud vĂ€ljad.

- Lisatud on API PhotoPickerUiCustomizationParams, et muuta fotode valimise kasutajaliidest, mis vÔimaldab viia selle lÀhemale kutsuva rakenduse stiilile. NÀiteks on vÔimalik muuta fotode pisipiltide kuvasuhte 1:1 (ruut) asemel 9:16 (portree) peale.

- Lisatud on Ă”igus USE_LOCATION_BUTTON, mis vĂ”imaldab rakenduse liidesesse integreerida sĂŒsteemi nupu, mis annab juurdepÀÀsu tĂ€psetele asukohandmetele. Nupp joonistatakse sĂŒsteemi poolt ja pĂ€rast kasutaja vajutamist avab see juurdepÀÀsu asukohale ainult jooksva sessiooni ajaks.

- Lisatud on seadistus, mis vÔimaldab eemaldada rakenduste nimede kuvamise nende ikoonide all.

- Muudetud on tööriistariba disaini, et salvestada skrinfeste.

- Lisatud on ekraanireaktsioonide (Screen Reactions) tugi, mis ĂŒhendab video salvestamise esikaamerast ekraanipildiga, et kanda oma kommentaare ekraanil toimuvatele tegevustele.
- Lisatud on reĆŸiim mĂ€ngude jaoks volditavatesse seadmetesse, kus ĂŒhe poole volditud ekraanist kasutatakse mĂ€ngu kuvamiseks ja teise poole virtuaalse mĂ€ngupuldi jaoks.

- Lisatud on API Handoff, mis vÔimaldab rakenduse olekut edastada lÀheduses asuvale teisele Android-seadmest (nÀiteks tablet), et seal jÀtkata tööd.

- Tehtud on interaktiivsed fikseeritud aknad, mis erinevad traditsioonilistest akendest âpilt pildisâ (Picture-in-Picture), jÀÀdes fikseerimisel interaktiivseteks teiste rakenduste kohal lauareĆŸiimis.
- Lisatud on kaks uut API-d: API UWB DL-TDOA â seadme asukoha mÀÀramine hoone sees Wi-Fi abil siseruumides navigeerimiseks; API Proximity Detection lĂ€heduses asuvate seadmete tuvastamiseks Wi-Fi abil.
- Lisatud toetus VVC (Versatile Video Coding) videoformaatidele, tuntud ka kui H.266 videokompressioonistandard, mille on vĂ€lja töötanud koostöös MPEG-i (ISO/IEC JTC 1) ja VCEG-i (ITU-T) töörĂŒhmad, kaasates selliseid ettevĂ”tteid nagu Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm ja Sony. H.266 asendab H.265 (HEVC) ja tagab kĂ”rge tĂ”hususe kĂ”ikide ekraanilahenduste (alates SD ja HD kuni 4K ja 8K) edastamisel ja salvestamisel, toetab laiemat dĂŒnaamilist vahemikku (HDR, High Dynamic Range) ja 360-kraadist panoramavideod.
- Lisatud vĂ”imalus salvestada video pideva kvaliteeditaseme juures. ReĆŸiimi seadistatakse MediaRecorder objekti kaudu, kasutades meetodit setVideoEncodingQuality(), mis vĂ”imaldab fikseerida kvaliteeditaseme ilma bitiviidete seotuse.
- Lisatud RAW14 pildiformaadi tugi, mida kasutatakse professionaalsetes digitaalsetes kaamerates ja mis tagab 15 bitti vÀrvikana.
- Lisatud HDR-video formaadi Eclipsa Video tugi.
- Lisatud HE-AAC (High-Efficiency Advanced Audio Coding) helikooderi tugi, mis toetab nii madalaid kui ka kÔrgeid bitiviiteid.
- Lisatud uus Ă”iguste mÀÀrang ACCESS_LOCAL_NETWORK, et piirata rakenduste juurdepÀÀsu kohaliku vĂ”rgu juurde. Selle Ă”iguse olemasolu vĂ”imaldab rakendustel tuvastada ja ĂŒhenduda seadmetega kohalikus vĂ”rgus, nĂ€iteks nutikodude ja multimeedia sĂŒsteemidega. Ăigus on lisatud selleks, et blokeerida pahavara rakenduste skaneerimine kohalikus vĂ”rgus, nĂ€iteks kasutaja keskkonna varjatud tuvastamiseks.
- Laienenud on kaitse ĂŒhekordsete paroolide (OTP) ja kinnituskoodide hĂ”ivamise vastu, mida saadetakse SMS-iga. Otsene juurdepÀÀs sellistele sĂ”numitele avatakse enamiku rakenduste jaoks alles kolm tundi pĂ€rast sĂ”numi saamist. SMS-i lugemisrakenduses kuvatakse sellised sĂ”numid kohe.
- Teostatud on kaitse petturlike kÔnede vastu, kes esitlevad end pankade töötajatena. Platvorm saab suhelda paigaldatud pangarakendustega, et kinnitada, et kÔne on algatatud pangast. Samuti saavad pangad kindlaks teha telefoninumbrid, millele on lubatud ainult sissetulevad kÔned.
- Lisatud on vÔimalus anda rakendustele ajutine juurdepÀÀs tÀpse asukoha andmetele, mis kehtib ainult praeguse seansi jooksul.
- KoodidĂŒnaamika laadimise mehhanismi (DCL) on laiendatud rakendamiseks natiivsete teekide puhul, mis laaditakse meetodi System.load() kaudu, mitte ainult
DEX ja JAR formaadis failide kaudu. DCL aitab vĂ€ltida pahatahtliku koodi asendamist dĂŒnaamiliselt laaditud tĂ€idetavates failides, kehtestades sellistele failidele lugemisĂ”igused. - Vaikimisi on sisse lĂŒlitatud Certificate Transparency mehhanism, mis hoiab avalikku logi kĂ”ikidest vĂ€lja antud ja tĂŒhistatud sertifikaatidest.
- Pakutakse vĂ”imalust allkirjastada APK-pakette digitaalse allkirjaga, mis pĂ”hineb hĂŒbriidalgoritmil, mis ĂŒhendab klassikalise algoritmi ML-DSA algoritmiga, mis on kvantkompuutri rĂŒnnakute suhtes vastupidav.
- Taustarakendustele on piiratud juurdepÀÀs helide esitamise, heliseadmetega ĂŒhenduse loomise ja helitugevuse muutmise APIdele. Eeldatakse, et ainult aktiivsed rakendused, millega kasutaja hetkel suhtleb, saavad alustada helide esitamist ja muuta helitugevust.
- Lisatud on tugi hĂŒbriidsesse krĂŒpteerimisse HPKE (Hybrid Public Key Encryption, RFC 9180) mehhanismi baasil, mis ĂŒhendab lihtsuse avaliku vĂ”tme krĂŒpteerimise vĂ”tme edastamisel ja sĂŒmmeetrilise krĂŒpteerimise kĂ”rge jĂ”udluse (andmed krĂŒpteeritakse kiire sĂŒmmeetrilise vĂ”tmega, samas kui vĂ”tme ise krĂŒpteeritakse aeglasema asĂŒmmeetrilise meetodiga).
- FĂŒĂŒsilise klaviatuuri abil paroolide ja PIN-koodide sisestamisel on vaikimisi keelatud viimase sisestatud sĂŒmboli kuvamine kirjutamise ajal.
- MĂ€ngudes puuteplaadi toetamise lihtsustamiseks on hiire ja puuteplaadi sĂŒndmuste töötlemine ĂŒhtlustatud â vaikimisi muudetakse puuteplaadi sĂŒndmused, mis on seotud kursori liikumise ja kerimisĆŸestidega, suhteliste koordinaatide formaati, nagu hiirte puhul. Absoluutsetele koordinaatidele on juurdepÀÀs saadaval, kui mÀÀratakse selgelt POINTER_CAPTURE_MODE_ABSOLUTE reĆŸiim.
- ChooserSession objekti on lisatud meetod getInitialRestingBounds(), mis vÔimaldab teada saada dialooge valimise lÔpliku positsiooni ja suuruse pÀrast animatsiooni lÔppemist ja andmete laadimist.
- Lisatud meetodid getStreamingAppMaxDownlinkKbps ja getStreamingAppMaxUplinkKbps, et mÀÀrata sidekanali maksimaalne lÀbilaskevÔime kvaliteedi taseme valimiseks voogedastusel.
- Seadme tootjatele on antud API kaamerate laienduste loomiseks, mis vĂ”imaldavad rakendustes kasutada spetsiifilisi funktsioone, nagu Super Resolution detailide parandamise mehhanism, mĂŒra vĂ€hendamise reĆŸiimid ja AI-optimiseerijad kvaliteedi jaoks.
- Lisatud API kaamera tĂŒĂŒbi teabe saamiseks (sisseehitatud kaamera, USB web-kaamera vĂ”i virtuaalne kaamera).
- Lisatud tugi kuuldeaparaatidele, mis on ĂŒhendatud Bluetooth Low Energy (BLE) liidese kaudu. Sellised seadmed on klassifitseeritud uue kategooriaga TYPE_BLE_HEARING_AID, mis vĂ”imaldab rakendustel eristada kuuldeaparaate ja kĂ”rvaklappe ning eraldi hallata sĂŒsteemihelide esitust (nĂ€iteks saab mĂ€ngida teavitushÀÀli, kĂ”nesid ja Ă€ratusi telefoni sisseehitatud kĂ”laris, mitte kuuldeaparaadis).
- Lisatud eraldi seaded parooli nĂ€itamise lubamiseks fĂŒĂŒsilisel klaviatuuril ja puuteekraanil. Vaikimisi peidetakse fĂŒĂŒsilise klaviatuuri kaudu sisestatud paroolimĂ€rgid kohe.
- Parandatud rakenduste vidinate kuvamist vÀlistel ekraanidel, arvestades DPI erinevust skaalimisel.
- Lisatud pĂ€ring ACTION_VPN_APP_EXCLUSION_SETTINGS, millega saab avada sĂŒsteemi ekraani seadistustes, mis vĂ”imaldavad avada rakendusele vĂ”rguĂŒhenduse otse. VPN-tunneli.
- Lisatud tugi OpenJDK 25 keele funktsioonidele ja Java klassidele.
- Kaameraga töötamiseks on laienenud tarkvaraliideste vĂ”imalused. Objekti CameraCaptureSession juurde on lisatud meetod updateOutputConfigurations(), et siduda vĂ”i lahti siduda vĂ€ljundala dĂŒnaamiliselt ilma, et oleks vajalik kogu kaamera andmete salvestamise seansi ĂŒmberseadistamine. Praktikas vĂ”imaldab muudatus sujuvat ĂŒleminekut erinevatele kaamera tööreĆŸiimidele (nĂ€iteks video salvestamine ja fotode tegemine). Loogiliste kaameratega, mis katab mitu fĂŒĂŒsilist andurit, on lisatud vĂ”imalus saada andmeid iga anduri kohta, mitte ainult esmase kohta.
- Android:usesCleartextTraffic atribuut on kuulutatud vananenuks, mis lubas rakendusel edastada krĂŒptimata liiklust, nĂ€iteks pĂ€ringuid "http://". Kui krĂŒptimata liikumist on vajalik kasutada, tuleks kasutada eraldi faile turvaseadete jaoks.
- Lisatud sÀtted VoIP-kÔnede ajalugu haldamiseks, mis vÔimaldavad kontrollida teabe salvestamist logides ja nÀitamist kasutajaliideses toimunud kÔnede kohta.
- Wi-Fi RTT (Round-Trip-Time) API-s on laiendatud pideva ligikaudse kauguse mÀÀramise vĂ”imalusi juurdepÀÀsupunktide ja P2P-ĂŒhenduste (peer-to-peer) turvalise seadmete mÀÀramise osas.
- CompanionDeviceManagerisse on lisatud uued profiilid, et taotleda Ôigusi ja rakenduste suhtlemiseks meditsiiniseadmete ja fitnessi jÀlgijatega.
- Android Runtime'is (ART) on rakendatud generatsiooniline prĂŒgikorraldaja (Generational Concurrent Mark-Compact Garbage Collector), mis kasutab eraldi töötlemist "vanade" ja "noorte" objektide jaoks, mis suurendab hiljuti loodud objektide puhastamise efektiivsust, millel on vĂ€ike eluea pikkus. Generatsioonilise prĂŒgikorraldaja kasutuselevĂ”tt vĂ€hendab ressursi eraldamise ajal peatamiste riski ja alandab CPU koormust, suurendades seelĂ€bi energiatarbimise efektiivsust.
- Rakendatud on maksimaalse mĂ€lumahtu piirang, mida rakendus vĂ”ib kasutada. Kui piirang ĂŒletatakse, mis arvutatakse olemasoleva RAM-i pĂ”hjal seadmes, lĂ”petatakse rakendus sundavalt. MĂ€lutarbimise vĂ€hendamiseks on ette nĂ€htud R8 Optimizer, mis pakib klasside, meetodite ja vĂ€ljade nimesid, samuti eemaldab kasutamata koodi ja ressursid.
- Linuxi kerneli kokkupanekul on sisse lĂŒlitatud AutoFDO (Auto-Feedback-Directed Optimization) optimeerimine, mis kasutab spĂ€htimistulemusi, kus on teave erinevate koodilĂ”ikude tĂ€itmise sageduse kohta, et suurendada sageli tĂ€idetud toimingute jĂ”udlust. Teostatud testide kĂ€igus viis AutoFDO lubamine kerneli jaoks laadimisaega 2,1% vĂ”rra, programmide esmakordse kĂ€ivitamise kiirus suurenes 4,3%, sĂŒsteemi sĂŒsteemikĂ”nede efektiivsus paranes 9,3%, mmap-tehingute Binderi tĂ€itmiskiirus vĂ€henes 12,3%, HwBinderil 20% ja Binder RPC-l 21,7%.
- Pakutud on uus versioon sÔnumi jÀrjekorrast android.os.MessageQueue, mis töötab ilma blokeerimiseta. Uus rakendus vÔimaldab suurendada jÔudlust ja vÀhendada kadude arvu.
- Rakendustel, mis teatavad Android 17 ja uutest versioonidest, on keelatud muuta âstatic finalâ mĂ€rkega vĂ€ljade vÀÀrtusi, mis vĂ”imaldab runtime'is rakendada agressiivsemaid jĂ”udluse optimeerimisi.
- MÀlu tarbimise vÀhendamiseks on piiritletud oma teavituste kujunduste (notification view) suurus.
- ProfilingManagerisse on lisatud tĂ€iendavad kĂ€ivitustĂŒĂŒbid TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM ja TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE, et koguda andmeid, mis on kasulikud jĂ”udlusprobleemide tĂ”rkeotsingu ajal.
Allikas: opennet.ru











