Google avaldas avatud mobiilplatvormi Android 17 vĂ€ljaande. Seotud lĂ€htekoodid on saadaval projekti Git-repositooriumis (haru android-17.0.0_r1). Firmware'i koostised on ette valmistatud 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. Eelversioonid firmware'ist on saadaval seadmetele HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo ja Xiaomi. Ăksikasjalikud GSI (Generic System Images) koostised, mis sobivad erinevatele seadmetele ARM64 ja x86_64 arhitektuuride pĂ”hjal, on ka koostamisel.
Muudatused (1, 2, 3):
- Lisatud on uus mitme akna tööreĆŸiim - âBubblesâ, mis vĂ”imaldab kĂ€ivitada mis tahes rakendusi ujukindlates akendes, mis meenutavad teise sisu kohal kuvatavaid teateid sĂ”numite saatmiseks (âmullidâ), kuid ei ole seotud spetsialiseeritud API-ga. Rakenduse avamine ujukindlas aknas toimub rakenduse ikooni pikaajalise vajutamise kaudu. Suurtel ekraanidel kuvatakse ujukindlate akende ikoonid eraldi alal ĂŒlesannete ribal. Sarnaseid aknaid saab rĂŒhmitada, liikuda ja ekraanil kinnitada.

- Kasutajaliidese arendamine suure ekraaniga seadmetele, nagu tahvelarvutid, sĂŒlearvutid, lauaarvutid ja volditavad nutitelefonid, jĂ€tkub. Eemaldatud on varasemad valikud uue kĂ€itumise deaktiveerimiseks ekraanidega seadmetel, mille laius ĂŒletab 600 tingimuslikku pikslit (dp), mis on seotud teatud ekraani suuruse ja orientatsiooni juhtimise API-de (screenOrientation, resizeableActivity, [min|max]AspectRatio) eiramisega ning kohandatud rakenduste paigutamisega akendes, mis lubavad suuruse muutmist ja ekraanil liikumist.


- Lisatud on sĂŒsteemne EyeDropper API, mille abil saab rakendus teavet ekraanil oleva iga pikseli vĂ€rvi kohta ilma ekraani salvestamise Ă”igusi kĂŒsimata. Turvalisus tagatakse selle kaudu, et kasutaja mÀÀrab ala, mille vĂ€rvi mÀÀramine toimub, hallatavast platvormi liidese kaudu koos "pipetiga", mis ei kuulu rakenduse kontrolli alla, st rakendus ei saa kĂŒsida teavet konkreetse pikseli kohta ega taasta ekraani sisu piksel-piksel.

- Lisatud on sĂŒsteemne kontaktide valimise liides kontaktide nimekirjast, millele pÀÀseb juurde, kui on saadud ACTION_PICK_CONTACTS volitused. Liides vĂ”imaldab vĂ€ltida READ_CONTACTS volituse andmist, mis vĂ”imaldab lugeda kĂ”iki kontaktandmeid. Uue liidese vĂ€ljakutsumise ajal otsustab kasutaja, millist teavet kontaktide nimekirjast rakendusele edastada, saades valida ainult teatud vĂ€ljad.

- Lisatud on API PhotoPickerUiCustomizationParams, et muuta fotode valiku liides sobivamaks rakenduse stiiliga. NÀiteks on vÔimalik muuta fotode miniatuuri kuvasuhte 1:1 (ruut) asemel 9:16 (portree).

- Lisatud on USE_LOCATION_BUTTON lubamine, mis vĂ”imaldab rakenduse liidese sisse ehitada sĂŒsteemset nuppu, mis annab juurdepÀÀsu tĂ€psetele asukohaandmetele. Nupp renderdatakse sĂŒsteemi poolt ja pĂ€rast kasutaja vajutamist avab juurdepÀÀsu asukohale ainult praeguse seansi ajaks.

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

- Muudetud on tööriistariba kujundust ekraanipildistamise jaoks.

- Lisatud on ekraanireaktsioonide (Screen Reactions) tugi, mis ĂŒhendab videosalvestuse esikaameraga ekraanipildistamisega, et lisada oma kommentaare ekraanil toimuvale.
- Lisatud on reĆŸiim mĂ€ngude jaoks volditavatega seadmetega, kus ekraani ĂŒks pool kasutatakse mĂ€ngu esitamiseks ja teine virtuaalse mĂ€ngupuldi jaoks.

- Lisatud on API Handoff, mis vÔimaldab rakenduse oleku edastamist lÀhedal asuvale Android-seadmmele (nÀiteks tahvelarvutile), et seal tööd jÀtkata.

- Töötavad interaktiivsed kinnitatud aknad, mis erinevalt traditsioonilistest pildi-sisepilt (Picture-in-Picture) akendest jÀÀvad teistest rakendustest ĂŒle kinnitatud desktop-reĆŸiimis interaktiivseks.
- Lisatud on kaks uut API-d: API UWB DL-TDOA â seadmestiku asukoha mÀÀramine siseruumides Wi-Fi abil ruumide navigeerimiseks; API Proximity Detection, et tuvastada lĂ€henevad seadmed Wi-Fi kaudu.
- Lisatud on tugi VVC (Versatile Video Coding) videoformaadi jaoks, tuntud ka kui H.266 video kokkusurumise standard, mis on vĂ€lja töötatud koostöös MPEG (ISO/IEC JTC 1) ja VCEG (ITU-T) töögruppidega, osalusel selliste ettevĂ”tete nagu Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm ja Sony. H.266 asendab H.265 (HEVC) ning tagab tĂ”husa andmete edastamise ja salvestamise kĂ”ikide ekraani resolutsioonide jaoks (alates SD ja HD kuni 4K ja 8K), toetab laienenud dĂŒnaamilise vahemiku (HDR, High Dynamic Range) ja 360-kraadise panoraamvideo.
- Videotehnoloogia on nĂŒĂŒd tĂ€iustatud, vĂ”imaldades salvestada videosid konstantse kvaliteeditasemega. ReĆŸiimi saab seadistada objekti MediaRecorder kaudu, kasutades meetodit setVideoEncodingQuality(), mis tagab kvaliteedi fikseerimise sĂ”ltumatult bitikiirusest.
- Tugitehnoloogia on nĂŒĂŒd lisatud RAW14 pildiformaadile, mida kasutatakse professionaalsetes digitaalsetes kaamerates ning mis vĂ”imaldab salvestada 15 bitti igasse vĂ€rvikanalisse.
- Tugitehnoloogia on nĂŒĂŒd lisatud HDR-video formaadile Eclipsa Video.
- On lisatud tarkvarakodeerija heliformaadile HE-AAC (High-Efficiency Advanced Audio Coding), mis toetab nii madalaid kui ka kÔrgeid bitikiirusid.
- On lisatud uus lubamine ACCESS_LOCAL_NETWORK rakenduste juurdepÀÀsu piiramiseks kohalikule vĂ”rgule. Selle loa olemasolu vĂ”imaldab rakendustel tuvastada ja ĂŒhendada seadmetega kohalikus vĂ”rgus, nĂ€iteks nutika kodu ja multimeedia sĂŒsteemidega. Luba on lisatud, et takistada pahavara rakenduste skaneerimist kohaliku vĂ”rgu ressursside osas, nĂ€iteks kasutaja keskkonna varjatud tuvastamiseks.
- KĂ”rvaldatud on kaitse ĂŒhekasutuskoodide (OTP) ja kinnituskoodide vastu, mis saadetakse SMS-iga. Juhtivad rakendused saavad sellistele teadetele nĂŒĂŒd juurdepÀÀsu alles kolm tundi pĂ€rast sĂ”numi saabumist. Tehnilises SMS-lugerias kuvatakse need sĂ”numid kohe.
- Tehtud on kaitse petturite kÔnede vastu, kes esitlevad end pankade töötajatena. Platvorm saab suhelda paigaldatud pangarakendustega, et kinnitada, et kÔne algatab pank. Pangad saavad samuti mÀÀrata telefoninumbreid, millel lubatakse ainult tulenevaid kÔnesid.
- Lisatud on vÔimalus anda rakendustele ajutine juurdepÀÀs tÀpse geolokatsiooni andmetele, mis kehtib ainult praeguse seansi jooksul.
- DĂŒnaamilise koodi laadimise (DCL) kaitse mehhanismi on laiendatud natiivsete teekide kasutamiseks, mille laadimine toimub meetodi System.load() kaudu, mitte ainult.
failide formaatidest DEX ja JAR. DCL aitab vĂ€ltida pahatahtlike koodide sisestamist dĂŒnaamiliselt laaditavatesse tĂ€idetavatesse failidesse, seades nende failide jaoks Ă”igused, mis lubavad ainult lugemist. - Vaikimisi on sisse lĂŒlitatud Certificate Transparency mehhanism, mis hoiab avalikku logi kĂ”igist vĂ€lja antud ja tĂŒhistatud sertifikaatidest.
- APK-pakettide digitaalset allkirjastamist on vĂ”imalik kinnitada hĂŒbriidalgoritmi alusel, mis ĂŒhendab klassikalise algoritmi ja ML-DSA algoritmi, mis on kvantarvutite rĂŒnnakute suhtes vastupidav.
- Taustal töötavatele rakendustele on piiratud juurdepÀÀs API-le helide taasesitamiseks, heliseadmete ĂŒhendamiseks ja helitugevuse muutmiseks. Eeldatakse, et vaid aktiivsed rakendused, millega kasutaja praegu suhtleb, saavad alustada taasesitamist ja muuta helitugevust.
- Lisatud tugi HPKE (Hybrid Public Key Encryption, RFC 9180) pĂ”hinevale hĂŒbriidse krĂŒpteerimise mehhanismile, mis ĂŒhendab avaliku vĂ”tme krĂŒpteerimise lihtsuse sĂŒnnipĂ€rase krĂŒpteerimise kĂ”rge jĂ”udlusega (andmed krĂŒpteeritakse kiire sĂŒĂŒtevĂ”tmise vĂ”tmega, samas kui vĂ”ti ise krĂŒpteeritakse aeglaselt asĂŒmmeetriliselt).
- Paroolide ja PIN-koodide sisestamisel fĂŒĂŒsilise klaviatuuri kaudu on vaikimisi vĂ€lja lĂŒlitatud viimane sisestatud sĂŒmbol ekraanil kuvamine kirjutamise ajal.
- Kuna mĂ€ngudes on puuteplaatide toetamine lihtsustatud, on hiire ja puuteplaadi sĂŒndmuste töötlemine ĂŒhtlustatud â nĂŒĂŒd muudetakse vaikimisi puuteplaadi tĂ”ukamise seotud sĂŒndmused ja koordinaadid suhteliseks vorminguks nagu hiire puhul. Absoluutsete koordinaatide juurde pÀÀseb, kui mÀÀratakse selgelt reĆŸii POINTER_CAPTURE_MODE_ABSOLUTE.
- Objekti ChooserSession juurde on lisatud meetod getInitialRestingBounds(), mis vÔimaldab teada saada valiku dialooge (Chooser) lÔpp-punkti ja suuruse pÀrast animatsiooni lÔpetamist ja andmete laadimist.
- Lisatud meetodid getStreamingAppMaxDownlinkKbps ja getStreamingAppMaxUplinkKbps, et mÀÀrata sidekanali maksimaalne lÀbilaskevÔime kvaliteedi taseme valimise eesmÀrgil voogedastamise ajal.
- Seadme tootjatele on antud API kaamerate laienduste loomiseks, mis vĂ”imaldavad rakendustes kasutada spetsiifilisi funktsioone, nagu Super Resolution detailide suurendamise mehhanism, mĂŒra summutamise reĆŸiimid ja AI-kvaliteedi optimeerijad.
- Lisatud API kaamera tĂŒĂŒbi (sisseehitatud kaamera, USB veebikaamera vĂ”i virtuaalkaamera) teabe hankimiseks.
- Lisatud tugi kuuldeaparaatidele, mis on ĂŒhendatud Bluetooth Low Energy (BLE) liidese kaudu. Sellised seadmed on liigitatud uude kategooriasse TYPE_BLE_HEARING_AID, mis vĂ”imaldab rakendustel eristada kuuldeaparaate ja kĂ”rvaklappe ning eraldi hallata sĂŒsteemihÀÀlte esitust (nĂ€iteks saab mĂ€ngida teate-, kĂ”ne- ja Ă€ratushelisid telefoni sisseehitatud kĂ”larist, mitte kuuldeaparaadist).
- Lisatud on eraldi sĂ€tted paroolide nĂ€itamise lubamiseks, kui sisestatakse fĂŒĂŒsilise klaviatuuri ja puuteekraani kaudu. Vaikimisi peidetakse fĂŒĂŒsilise klaviatuuriga sisestatud paroolisĂŒmbolid kohe.
- TÀpsemate DPI vÀÀrtuste arvesse vÔtmise tÔttu on parendatud rakenduste vidinate kuvamist vÀlistel ekraanidel.
- Lisatud on ACTION_VPN_APP_EXCLUSION_SETTINGS pĂ€ring, millega saab kĂ€ivitada sĂŒsteemi ekraani seadistuste jaoks, mis vĂ”imaldavad rakendusel kasutada vĂ”rguĂŒhendust tĂ”kke kĂ”rval. VPN-tunnelist.
- Lisatud on toetus OpenJDK 25 saadavatele keele ja Java klasside vÔimalustele.
- Kaamera töötluse liideste vĂ”imalused on laienenud. Objektile CameraCaptureSession on lisatud meetod updateOutputConfigurations(), mis vĂ”imaldab reaalajas lisada vĂ”i eemaldada vĂ€ljundipiirkondi, ilma et oleks vaja kogu kaamera andmete salvestamise seanssi uuesti seadistada. Praktiliselt vĂ”imaldab see sujuvat ĂŒleminekut erinevatele kaamera tööreĆŸiimidele (nt video salvestamine ja fotode tegemine). Loogiliste kaameratega, mis katab mitut fĂŒĂŒsilist sensorit, on lisatud vĂ”imalus saada iga sensori kohta metainfot, mitte ainult esmase kohta.
- Aknal android:usesCleartextTraffic, mis lubas rakendusel edastada krĂŒpteerimata liiklust, nĂ€iteks pĂ€ringute tegemine "http://" kaudu, on kuulutatud aegunuks. Kui krĂŒpteerimata liikluse kasutamine on vajalik, tuleks kasutada eraldi turbekonfiguratsioonifaile.
- VoIP-kÔnede ajaloo haldamiseks on lisatud seadistused, mis vÔimaldavad kontrollida logide sÀilitamist ja sooritatud kÔnede kohta teabe kuvamist liideses.
- Wi-Fi RTT (Round-Trip-Time) API-s on laiendatud pideva ligipÀÀsu mÀÀramise vĂ”imalusi juurdepÀÀsupunktide kaugusele ja turvalise punktide leidmise jaoks P2P-ĂŒhendustes (peer-to-peer).
- CompanionDeviceManagerisse on lisatud uued profiilid Ôiguste taotlemiseks ja rakenduste interaktsiooniks meditsiiniseadmete ja spordikelladega.
- Android Runtime'is (ART) on rakendatud pĂ”lvkondadega prĂŒgikotide koguja (Generational Concurrent Mark-Compact Garbage Collector), mis kasutab vanade ja noorte objektide eraldi töötlemist, parandades hiljuti loodud lĂŒhiajaliste objektide puhastamise efektiivsust. PĂ”lvkondadega prĂŒgikotiga töötamine vĂ€hendab ressursside eraldamise ajal katkestuste ohtu ja alandab CPU koormust, suurendades seelĂ€bi energiatĂ”husust.
- Rakendusele on seatud maksimaalne mĂ€lu piirang, mis vĂ”ib kasutada seadme RAM-i. Ăletades seadistatava limiidi, sundkattub rakendus. Kasutamiseks on pakutud R8 Optimizer, mis pakendab klasside, meetodite ja vĂ€ljade nimesid ning eemaldab kasutamata koodi ja ressursid.
- Linuxi kerneli koostamisel on sisse lĂŒlitatud AutoFDO (Auto-Feedback-Directed Optimization) optimeerimine, mis kasutab koodilĂ”ikude tĂ€itmise sageduse profili tulemusi, et tĂ”sta sageli tĂ€idetavate toimingute jĂ”udlust. Testides viis AutoFDO rakendamine kerneli puhul aega laadimise vĂ€hendamisele 2.1%, programmide esmakordse kĂ€ivitamise kiirendamisele 4.3%, sĂŒsteemi kutsungite efektiivsuse tĂ”usule 9.3%, mmap-transaktsioonide Binder tĂ€itmise ajakokkuvĂ”tte 12.3%-le, HwBinder 20%-le ja Binder RPC 21.7%-le.
- Uus tÀiustatud rakendus sÔnumijÀrjekorrast android.os.MessageQueue, mis töötab ilma lukustusteta. Uus rakendus vÔimaldab suurendada jÔudlust ja vÀhendada kaadrite kadumist.
- Android 17 ja uuemate versioonide toetust vĂ€itvatele rakendustele on keelatud muuta vÀÀrtusi, mis on mĂ€rgitud kui âstatic finalâ, mis vĂ”imaldab kasutada jĂ”udluse agressiivsemaid optimeerimisi tööajal.
- MÀlu tarbimise vÀhendamiseks on piiratud kohandatud teavitamise kujunduste (notification view) suurust.
- Profilingu haldurisse (ProfilingManager) on lisatud tÀiendavad trigged: TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM ja TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE, et koguda andmeid, mis on kasulikud jÔudluse probleemide tÔrkeotsingul.
Allikas: opennet.ru











