Android 16 ir aprīkots ar vienu no tiem uzlabojumiem, kas no pirmā acu uzmetiena šķiet nenozīmīgi, taču ikdienas dzīvē var radīt lielas pārmaiņas: Lietotņu atjauninājumi kļūst gandrīz acumirklī un daudz mazāk kaitinoši.Pateicoties sistēmas izmaiņu un jaunu lietotņu instalēšanas funkciju kombinācijai, Google vēlas, lai jūsu tālrunis vienmēr būtu atjaunināts, neradot sajūtu, ka kaut kas pastāvīgi sasalst.
Aiz šīs vienmērīgākās pieredzes fonā darbojas vairāki tehniski komponenti: jaunie “vienkāršie lietojumprogrammu atjauninājumi”, tādu procesu kā dexopt un dex2oat pārvietošana un tā sauktā mākoņdatošanas izveideTas viss notiek papildus citām būtiskām izmaiņām operētājsistēmā Android 16, kas ietekmē izstrādātājus, veiktspēju, drošību, privātumu, digitālo veselību un saderību ar vairāk ekrāna formātiem. Apskatīsim skaidri un tieši, kas tieši mainās.
Kas ir nemanāmi lietotņu atjauninājumi operētājsistēmā Android 16?
Android 16 galvenā ideja šajā jomā ir skaidra: lai nodrošinātu, ka lietotņu atjauninājumiem ir pēc iespējas mazāka ietekme uz normālu mobilā tālruņa lietošanuLīdz šim brīdim katru reizi, kad lietotne tika atjaunināta, sistēmai tā bija uz īsu laiku "iesaldējama", kamēr tika aizstāts kods un iekšējie resursi, neļaujot tai darboties paralēli, lai izvairītos no kļūdām, datu kļūmēm vai negaidītām izslēgšanām.
Tas Pagaidu iesaldēšana bija loģiska no stabilitātes viedokļa.Taču praksē tas varētu būt nedaudz traucēklis. Lielās vai sistēmai kritiski svarīgās lietotnēs šī vairāku sekunžu iesaldēšana bija pietiekama, lai citas no tām atkarīgas lietotnes sāktu darboties dīvaini, iestrēgtu gaidīšanas režīmā vai pat parādītu neregulāras kļūdas.
Ar Android 16 Google sper vēl vienu soli un agresīvāk pieņem koncepciju nemanāmi lietotņu atjauninājumiMērķis ir ne tikai samazināt atjaunināšanas laiku, bet arī pēc iespējas samazināt laiku, kurā lietotne ir pilnībā nedarbojoša, gandrīz līdz vietai, kur lietotājs to nemana.
Saskaņā ar informāciju, ko Google sniedza no oficiāliem avotiem, Periods, kurā lietotne atjaunināšanas laikā paliek iesaldēta, ir samazinājies no "dažām sekundēm" līdz "desmitiem milisekundēm".Praktiski mēs runājam par lēcienu no pauzes, ko jūs skaidri pamanījāt, līdz mirgoņai, ko daudzos gadījumos jūs pat neuztverat.
Kā Android 16 paātrina lietotņu atjauninājumus
Lai panāktu šo agresīvo dīkstāves laika samazinājumu, Android 16 neizmanto virspusējus trikus. Tas reorganizē ļoti sarežģītus iekšējos uzdevumus un pārceļ tos uz posmu pirms instalēšanas.tāpēc “kritiskais” posms, kurā lietotne ir jāiesaldē, kļūst daudz īsāks.
Divas galvenās daļas šeit ir dexopt un dex2oatTie ir rīki Android Runtime (ART) vidē, kas atbild par lietojumprogrammas baitkoda optimizēšanu. Tradicionāli daļa no to darba tika izpildīta tieši lietotnes apturēšanas laikā, kas dažos gadījumos pagarināja iesaldēšanas laiku par vairākām sekundēm.
Izmantojot operētājsistēmu Android 16, Šie procesi pāriet uz agrāku atjaunināšanas plūsmas fāzi.Citiem vārdiem sakot, sistēma veic lielāko daļu optimizācijas, pirms sasniedz punktu, kurā vecie faili ir jāaizstāj ar jauniem. Kad iestājas kritiskā pauze, atliek tikai veikt ātru failu apmaiņu, samazinot iesaldēšanas laiku līdz tikai dažām desmitiem milisekundēm.
Šīs pieejas priekšrocība ir divējāda: no vienas puses, Lietotājs atjauninājumu uztver gandrīz acumirklī. jo lietotne tikpat kā nepārstāj būt pieejama; no otras puses, tiek saglabāts tāds pats datu drošības un konsekvences līmenis, jo validācijas un optimizācijas turpinās, tikai lietotāja pieredzei mazāk neērtā procesa brīdī.
Reāla ietekme uz lietotājiem ar daudzām lietotnēm un pieticīgiem mobilajiem tālruņiem
Mobilajā tālrunī ar dažām vieglām lietotnēm šīs izmaiņas var palikt nedaudz nepamanītas. Ja izmantojat tikai dažas lietotnes, kas tiek atjauninātas neregulāri un patērē maz resursu, iespējams, nekad neesat uzskatījis, ka atjauninājumi ir problēma.Taču aina ievērojami mainās, ja runājam par ierīcēm ar desmitiem lietotņu, sarežģītām spēlēm vai pakalpojumiem, kas tiek bieži atjaunināti.
Telefonos, kuros intensīvi tiek izmantotas daudzas lietotnes, Samazinot dīkstāves laiku starp atjauninājumiem, tiek samazināts īslaicīgu iesaldējumu skaits, mazāk dīvainu saskarnes lēcienu un daudz vienmērīgāka kopējā pieredze.Turklāt, ja kāda no šīm lietotnēm darbojas kā centrālais pakalpojums vai nodrošina API citām lietojumprogrammām (piemēram, ziņojumapmaiņas klientiem, drošības bibliotēkām vai sistēmas lietotnēm), to iesaldēšanas samazināšana atjauninājumu laikā palīdz visai lietotņu ķēdei turpināt normālu darbību.
Šī attīstība ir īpaši interesanta arī sākuma līmeņa vai zemākas vidējās klases ierīceskur aparatūrai ir grūtības apstrādāt lielas instalācijas. Google ne tikai reorganizē lokālos procesus, bet arī saista šo uzlabojumu ar citu svarīgu Android 16 funkciju: mākoņkompilāciju, lai paātrinātu jaunu lietotņu instalēšanu, kas ir revolucionārs risinājums mazāk jaudīgiem tālruņiem.
Mākoņa kompilācija: lietotnes, kas instalējas ātrāk, pateicoties mākonim
Papildus atjauninājumu paātrināšanai operētājsistēmā Android 16 ir iekļauta funkcija, kas koncentrējas uz lietojumprogrammu un spēļu sākotnējā instalēšana, īpaši pieticīgās ierīcēsŠī funkcija ir pazīstama kā mākoņkompilācija, un tās misija ir skaidra: pārnest daļu no smagā darba, kas iepriekš pilnībā gulēja uz tālruņa procesoru un krātuvi, uz Google serveriem.
Instalējot lietotni operētājsistēmā Android, sistēma koda palaišanai izmanto ART. Instalēšanas laikā rīks dex2oat izmanto APK .dex failus, kuros ir kompilētais kods, un ģenerē vairākus "lietojumprogrammas artefaktus".Šie artefakti palīdz lietotnei atvērties un darboties ātrāk un efektīvāk, un tie var būt dažādos formātos: .vdex faili ar metadatiem baitkoda validācijai, .odex faili ar iepriekš kompilētu kodu konkrētām metodēm vai .art faili ar virkņu un klašu iekšējām reprezentācijām, kas paātrina lietotnes startēšanu.
Visjaudīgākajos mobilajos tālruņos Šo artefaktu ģenerēšana ir samērā ātra, gandrīz caurspīdīga.Taču lētos tālruņos ar lēniem procesoriem un lēnu atmiņu šis process var kļūt par šķērsli, īpaši, ja APK failā ir iekļauti daudzi .dex faili vai tā ir ļoti liela spēle vai lietotne.
Android 16 priekšlikums ir vienkāršs, bet efektīvs: Tā vietā, lai visus šos artefaktus ģenerētu ierīcē, lejupielādējiet tos jau iepriekš kompilētus no Google Play.Mūsdienās lielākajai daļai lietotāju ir pietiekami ātri mobilo sakaru un Wi-Fi savienojumi, tāpēc daudzos gadījumos ir efektīvāk izmantot tīklu, nevis piespiest tālruņa procesoru strādāt vairākas sekundes vai pat minūtes.
SDM un iepriekš kompilēti artefakti: drošu Dex metadatu loma
Android 16 mākoņdatošanas versija balstās uz jaunu failu tipu: SDM apzīmē Secure DEX M etadatuŠie SDM faili, kas lejupielādēti kopā ar APK failu no Play veikala, satur lietojumprogrammas artefaktus, kas jau ir ģenerēti Google infrastruktūrā, izmantojot dex2oat, tāpēc ierīcei šis darbs nav jāatkārto lokāli.
Svarīga detaļa ir tā SDM faili ir parakstīti ar to pašu atslēgu kā APK fails.Tas ļauj sistēmai pārbaudīt, vai artefakti nāk no uzticama avota un nav mainīti, nodrošinot procesa integritāti un drošību. Tādā veidā tālrunis var instalēt lietojumprogrammu tieši, izmantojot šos iepriekš kompilētos artefaktus, ievērojami paātrinot sākotnējo instalēšanu, īpaši zemas klases aparatūrā.
Praksē tas nozīmē, ka Android 16 daudzos gadījumos var neļaut dex2oat darboties instalēšanas laikāTā kā smagais darbs jau ir paveikts Google serveros, rezultāts ir mazāka procesora slodze, zemāks enerģijas patēriņš instalēšanas laikā un īsāks gaidīšanas laiks, lejupielādējot lielas lietotnes vai spēles ar ievērojamu koda apjomu.
Tomēr visa šī sistēma prasa, lai Google konfigurēja Play veikalu, lai masveidā ģenerētu un izplatītu šos SDM.Sākotnējos posmos šī funkcija var būt sistēmā, bet ne pilnībā aktīva, tieši tāpēc, ka mākoņdatošanas infrastruktūra ir jāpielāgo un jāievieš pakāpeniski. Negaidiet tūlītējus brīnumus visās saderīgajās ierīcēs; ieviešana notiks pakāpeniski.
Saistība starp ātrajiem atjauninājumiem un mākoņdatošanas veidošanu
Lai gan tās var šķist divas atsevišķas lietas, Nevainojami atjauninājumi un mākoņdatošanas veidošana ir cieši saistīti Jo abi ir saistīti ar to, kā un kad tiek ģenerēti un lietoti lietotņu izpildes artefakti. No vienas puses, Android 16 paredz dexopt un dex2oat izpildi uz mazāk kritiskām atjaunināšanas procesa fāzēm, samazinot laiku, kurā lietotne paliek iesaldēta.
Turklāt, Mākoņkompilācija nozīmē, ka daudzos gadījumos šis darbs pat nav jāveic ierīcē.Tas attiecas gan uz sākotnējo instalēšanu, gan uz noteiktiem atjauninājumiem. Lejupielādējot lietošanai gatavus artefaktus, abu pieeju kombinācija padara gan sākotnējo instalēšanu, gan turpmākos atjauninājumus ātrākus un mazāk traucējošus.
Tas viss saskan ar pamatmērķi: Optimizējiet Android, lai tas darbotos nevainojami pat uz pieticīgas aparatūrasvienlaikus samazinot dīkstāves laiku un mazinot blakusparādības, ko atjauninājumi var radīt citām lietotnēm un pakalpojumiem.
Citas izmaiņas operētājsistēmā Android 16, kas ietekmē veiktspēju un pieredzi
Atjauninājumu un instalāciju uzlabojumi nerodas vieni paši. Android 16 ietver garu uzvedības izmaiņu sarakstu, kas Tie ietekmē gan lietotnes, kas paredzētas jaunajai versijai (targetSdkVersion 36), gan pašu operētājsistēmu.Daudzi no tiem nav tieši saistīti ar lietotņu atjauninājumiem, taču tie ietekmē pieredzes stabilitāti, veiktspēju vai konsekvenci.
Lietotāja pieredzes un dizaina jomā, Android 16 nostiprina apņemšanos nodrošināt saskarnes no malas līdz malai noņemot opciju, kas ļāva atspējot šo režīmu, izmantojot atribūtu `windowOptOutEdgeToEdgeEnforcement` lietotnēs, kuru mērķauditorija ir jaunais API līmenis. Ja lietotne ir vērsta uz Android 16 un darbojas ierīcē ar šo versiju, tā vairs nevarēs atspējot šo darbību, tāpēc izstrādātājiem ir jāpielāgo savi dizaini, lai tie pareizi darbotos pilnekrāna režīmā.
Navigācijā ir arī būtiskas izmaiņas: Paredzošas atpakaļvērstas žesti kļūst par normu lietotnēm, kas paredzētas operētājsistēmai Android 16Ierīcēs ar šo versiju vairs netiek izsaukta funkcija `onBackPressed`, kā arī netiek sūtīta atslēga KEYCODE_BACK kā iepriekš; sistēmas animācijas tagad vada lietotāju uz vēlamo atrašanās vietu, velkot atpakaļ (sākums, iepriekšējā darbība utt.). Izstrādātājiem, kuri ir izmantojuši pogu Atpakaļ, vajadzētu migrēt uz jaunajām navigācijas API vai kā pagaidu risinājumu atspējot šo darbību, manifestā izmantojot atribūtu `android:enableOnBackInvokedCallback=false`.
Galvenās tehniskās izmaiņas izstrādātājiem
Papildus vizuālajai pieredzei, Android 16 ievieš pielāgojumus plānoto uzdevumu, fontu un atsaucīgo izkārtojumu iekšējā darbībāPiemēram, metode `scheduleAtFixedRate` maina savu darbību: tā vietā, lai izpildītu visas nokavētās izpildes, kad lietotne atgriežas derīgā dzīves ciklā, tiek aktivizēta tikai viena. Tas palīdz novērst pēkšņus darba slodzes pieaugumus un uzlabo kopējo veiktspēju, lai gan izstrādātājiem vajadzētu pārbaudīt, vai viņu loģika nav ietekmēta.
Runājot par tekstu un fontiem, Atribūtam elegantTextHeight vairs nav nekādas ietekmes uz lietotnēm, kas paredzētas operētājsistēmai Android 16Tā sauktie “elegantie fonti” tiek pārtraukti, tāpēc ir nepieciešams plānot konsekventu tipogrāfisko dizainu tādām valodām kā arābu, taju, tamilu vai dažādiem indiešu alfabētiem, nepaļaujoties uz šo automātisko pielāgošanu.
Ierīcēs ar lieliem ekrāniem (planšetdatoros, salokāmās ierīcēs, galddatoros, automašīnās, televizoros…), Android 16 vēl vairāk pastiprina adaptīvo dizainu idejuEkrānos ar minimālo platumu 600 dp manifestā deklarētie orientācijas, izmēru maiņas un malu attiecības ierobežojumi tiek ignorēti. Tas nozīmē, ka lietotne izvērsīsies, lai aizpildītu visu logu, bez vertikālas orientācijas vai piespiedu portreta vai ainavas orientācijas. Šis noteikums neattiecas tikai uz spēlēm, dažiem lietotāja konfigurētiem izņēmumiem un mazākiem ekrāniem.
Ir pagaidu evakuācijas ceļš: Īpašumu android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY var deklarēt aktivitātes vai lietojumprogrammas līmenī. lai saglabātu veco darbību lielos ekrānos. Taču šī funkcija nākamajās versijās (API 37. līmenis) izzudīs, tāpēc ieteicams sākt saskarņu pielāgošanu jau tagad.
Ziņas veselības, savienojamības un drošības jomā
Android 16 arī pastiprina kontroli pār veselības un fizisko aktivitāšu datiAtļaujas BODY_SENSORS un BODY_SENSORS_BACKGROUND ir aizstātas ar specifiskākām atļaujām android.permissions.health telpā, kas ir saskaņotas ar Health Connect. Lietotnēm, kas lasa sensitīvus datus, piemēram, sirdsdarbības ātrumu, ir jāpieprasa detalizētas atļaujas, piemēram, READ_HEART_RATE, un tām ir jābūt redzamai aktivitātei, lai parādītu to konfidencialitātes politiku, pretējā gadījumā sistēma var atsauk šīs atļaujas.
Bluetooth jomā Tiek ieviesti jauni nolūki, piemēram, ACTION_KEY_MISSING un ACTION_ENCRYPTION_CHANGE.Lai labāk apstrādātu savienošanas pārī zudumu un šifrēšanas izmaiņas, lietotnes, kas pārvalda savienotās ierīces, var precīzāk reaģēt, ja tiek pazaudētas atslēgas, saite tiek atkārtoti šifrēta vai mainās drošības parametri, pielāgojoties iespējamām atšķirībām starp ražotājiem.
Turklāt, Visas lietotnes, kas paredzētas operētājsistēmai Android 16, tagad var noņemt Bluetooth savienošanu pārī ar saistītajām ierīcēm, izmantojot publisku API CompanionDeviceManager.Izsaukums removeBond(int) ļauj atsaukt Bluetooth savienošanu pārī, kas saistīta ar CDM saistību, un lietotne var klausīties ACTION_BOND_STATE_CHANGED, lai izsekotu izmaiņas savienošanas pārī stāvoklī.
Drošības ziņā Android 16 turpina pastiprināt sistēmu. MediaStore#getVersion() tagad atgriež unikālu vērtību katrai lietotneiTas neļauj izmantot šo virkni kā pirkstu nospiedumu mehānismu starp lietojumprogrammām. Tiek virzīta arī iniciatīva "Drošie nolūki", kuras mērķis ir stiprināt nolūku atribūtu sistēmu: ja tas tiek aktivizēts, izmantojot atribūtu intentMatchingFlags, ir nepieciešami tieši nolūki, lai atbilstu mērķa komponentes filtram, un nolūki bez darbības nevar atbilst filtriem, ja vien netiek izmantoti īpaši karodziņi, piemēram, allowNullAction.
Šo stingrāko kontroli var iespējot lietojumprogrammas vai komponenta līmenī (aktivitāte, pakalpojums, uztvērējs…), izmantojot tādus karodziņus kā enforceIntentFilter vai neviensTas ietver arī žurnāla ziņojumus bloķēto nolūku atkļūdošanai. Ideja ir pakāpeniski pāriet uz modeli, kurā turpmākajās versijās šī stingrā izšķirtspēja būs noklusējuma darbība.
Papildu aizsardzība: Mali GPU, lokālais tīkls un fotoattēli
Vēl viena joma, kurā Android 16 stiprina drošību, ir piekļuve Mali GPU Pixel ierīcēsVecāki IOCTL vai tie, kas paredzēti tikai izstrādei, ir bloķēti, un profilēšanas IOCTL ir atļauti tikai čaulas procesiem vai atkļūdojamām lietotnēm. Tam nevajadzētu ietekmēt parastās lietotnes, standarta grafikas API, piemēram, Vulkan vai OpenGL, vai oficiālus profilēšanas rīkus, taču tas ierobežo iespējamos kodola līmeņa uzbrukumu vektorus. Ja lietotne mēģina izmantot aizliegtus IOCTL, sistēma ģenerē SELinux atteikumus, un Google iesaka ziņot par problēmu atbilstošajiem drošības kanāliem.
Privātuma jomā Android 16 sper ļoti svarīgu soli uz priekšu ar Vietējā tīkla aizsardzībaPašlaik jebkura lietotne ar interneta piekļuves atļauju var piekļūt ierīcēm lokālajā tīklā (LAN), paverot durvis pirkstu nospiedumu noņemšanas metodēm vai lokālā tīkla izmantošanai kā atrašanās vietas starpniekserverim. Jaunā pieeja nodrošina piekļuvi, kurai ir noteikta izpildlaika atļauja tuvumā esošo ierīču grupā.
Ieviešana notiek pakāpeniski, un tajā ir iespējošanas fāze (25. gada 2. ceturksnis), kurā Lietotnes var aktivizēt ierobežojumus, izmantojot saderības sistēmu, un pārbaudīt to lietošanas gadījumus.Ja paketei ir iestatīts karodziņš RESTRICT_LOCAL_NETWORK, datplūsma uz un no lokālā tīkla adresēm (unicast, multicast vai apraide, izmantojot TCP un UDP) radīs kļūdas, ja lietotnei nav atbilstošu atļauju, kamēr parastā interneta datplūsma turpina darboties.
Šajā sākotnējā fāzē Lai atgūtu piekļuvi lokālajam tīklam (LAN), lietotnei vienkārši jādeklarē un jāsaņem NEARBY_WIFI_DEVICES atļauja.Tomēr nākotnē tuvumā esošo ierīču grupā tiks ieviesta īpaša atļauja. Tīkli, piemēram, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, lokālās saites 169.254.0.0/16, CGNAT diapazoni 100.64.0.0/10 un multiraides adreses (224.0.0.0/4, ff00::/8) un citi tiek uzskatīti par "lokāliem".
Visbeidzot, Android 16 pielāgo fotoattēlu un videoklipu piekļuves pārvaldību. Kad lietotne, kuras mērķauditorija ir SDK 36, pieprasa multivides satura atļaujas ierīcē ar operētājsistēmu Android 16 Ja lietotājs izvēlas piešķirt piekļuvi tikai atlasītajiem vienumiem, šīs lietotnes ģenerētie fotoattēli un videoklipi fotoattēlu atlasītājā tiks parādīti kā iepriekš atlasīti. Lietotājs var noņemt atlasi, ja vēlas, kas atsauc lietotnes piekļuvi šiem konkrētajiem vienumiem.
Visas šīs izmaiņas — gandrīz tūlītēji atjauninājumi, mākoņkompilācija, jaunas atļaujas, lielāka kontrole pār nolūkiem, uzlabota GPU un lokālā tīkla drošība, kā arī uzlabojumi veselības, savienojamības un adaptīvā dizaina jomā — norāda uz vienu un to pašu mērķi: lai Android 16 kļūtu par vienmērīgāku, paredzamāku un drošāku platformu gan lietotājiem, gan izstrādātājiem.
Tā kā arvien vairāk modeļu zīmoli, piemēram, SamsungTā kā Xiaomi, Motorola, OnePlus un, protams, Pixel tālruņi saņems šo versiju, arvien biežāk lietotnes instalēšana vai atjaunināšana vairs nebūs tikai "sakrustotu īkšķu" brīdis, bet gan vienkārša procedūra, ko tik tikko pamanīsiet, turpinot lietot tālruni kā parasti. Kopīgojiet šo informāciju, lai citi lietotāji varētu būt lietas kursā par jaunajām Android 16 funkcijām.
