Android 12 -mobiilialustan julkaisu

Google on julkaissut avoimen mobiilialustan Android 12 julkaisun. Uuteen julkaisuun liittyvät lähdetekstit on julkaistu projektin Git-arkistossa (haara android-12.0.0_r1). Firmware-päivitykset valmistetaan Pixel-sarjan laitteille sekä Samsung Galaxyn, OnePlusin, Oppon, Realmen, Tecnon, Vivon ja Xiaomin valmistamille älypuhelimille. Lisäksi on luotu yleisiä GSI (Generic System Images) -kokoonpanoja, jotka sopivat erilaisiin ARM64- ja x86_64-arkkitehtuureihin perustuviin laitteisiin.

Tärkeimmät innovaatiot:

  • Yksi projektin historian merkittävimmistä käyttöliittymäsuunnittelupäivityksistä ehdotettiin. Uusi muotoilu toteuttaa "Material You" -konseptin, jota mainostetaan materiaalisuunnittelun seuraavan sukupolvena. Uutta konseptia sovelletaan automaattisesti kaikkiin alustoihin ja käyttöliittymäelementteihin, eikä se vaadi sovelluskehittäjiltä mitään muutoksia. Heinäkuussa on tarkoitus tarjota sovelluskehittäjille ensimmäinen vakaa julkaisu uudesta työkalupaketista graafisten käyttöliittymien kehittämiseen - Jetpack Compose.
    Android 12 -mobiilialustan julkaisu

    Itse alustassa on uusi widget-design. Widgettejä on tehty näkyvämmiksi, kulmia on pyöristetty paremmin ja mahdollisuus käyttää dynaamisia järjestelmän teemaan sopivia värejä. Lisätty interaktiivisia ohjaimia, kuten valintaruutuja ja kytkimiä (CheckBox, Switch ja RadioButton), esimerkiksi joiden avulla voit muokata tehtäväluetteloita TODO-widgetissä avaamatta sovellusta.

    Android 12 -mobiilialustan julkaisu

    Toteutettu tasaisempi visuaalinen siirtyminen widgeteistä käynnistettyihin sovelluksiin. Widgetien personointia on yksinkertaistettu - lisätty painike (ympyrä kynällä) widgetin paikan näytölle määrittämiseksi nopeasti uudelleen, mikä tulee näkyviin, kun kosketat widgetiä pitkään.

    Android 12 -mobiilialustan julkaisuAndroid 12 -mobiilialustan julkaisu

    Tarjolla on lisätiloja widgetin koon rajoittamiseen ja mahdollisuuteen käyttää widget-elementtien mukautuvaa asettelua (responsiivinen asettelu) standardiasettelujen luomiseen, jotka muuttuvat näkyvän alueen koon mukaan (voit esimerkiksi luoda erilliset asettelut tabletit ja älypuhelimet). Widget-valitsimen käyttöliittymä toteuttaa dynaamisen esikatselun ja mahdollisuuden näyttää widgetin kuvauksen.

    Android 12 -mobiilialustan julkaisu
  • Lisätty mahdollisuus mukauttaa järjestelmäpaletti automaattisesti valitun taustakuvan väriin - järjestelmä tunnistaa automaattisesti vallitsevat värit, säätää nykyistä palettia ja ottaa muutokset käyttöön kaikkiin käyttöliittymäelementteihin, mukaan lukien ilmoitusalue, lukitusnäyttö, widgetit ja äänenvoimakkuuden säädin.
  • Uusia animoituja tehosteita on otettu käyttöön, kuten asteittainen zoomaus ja tasainen alueiden siirto, kun elementtejä vieritetään, näytetään ja liikutetaan näytöllä. Esimerkiksi kun peruutat ilmoituksen lukitusnäytöltä, ajan ilmaisin laajenee automaattisesti ja vie tilan, jonka ilmoitus aiemmin vei.
  • Ilmoituksia ja pika-asetuksia sisältävän pudotusvalikon muotoilu on suunniteltu uudelleen. Pika-asetuksiin on lisätty vaihtoehdot Google Paylle ja älykkään kodin ohjaukselle. Virtapainikkeen painaminen tuo esiin Google Assistantin, jonka avulla voit soittaa puhelun, avata sovelluksen tai lukea artikkelin ääneen. Ilmoitukset, joiden sisältö on hakemuksen määrittelemä, annetaan yleisessä muodossa.
    Android 12 -mobiilialustan julkaisu
  • Lisätty Stretch overscroll -tehoste, joka osoittaa, että käyttäjä on siirtynyt vieritysalueen ulkopuolelle ja saavuttanut sisällön loppuun. Uuden tehosteen myötä sisältökuva näyttää venyvän ja palautuvan. Uusi vierityksen lopetustoiminto on oletusarvoisesti käytössä, mutta asetuksissa on vaihtoehto palauttaa vanha toimintatapa.
  • Käyttöliittymä on optimoitu laitteille, joissa on taitettava näyttö.
    Android 12 -mobiilialustan julkaisu
  • Tasaisemmat äänen siirtymät on toteutettu - kun vaihdetaan ääntä toistavasta sovelluksesta toiseen, ensimmäisen ääni mykistyy nyt sujuvasti ja toisen ääni kasvaa tasaisesti ilman, että yksi ääni asetetaan päällekkäin.
  • Pika-asetuslohkon, paneelin ja järjestelmäkonfiguraattorin verkkoyhteyksien hallintaliittymä on modernisoitu. Uusi Internet-paneeli on lisätty, jonka avulla voit nopeasti vaihtaa eri palveluntarjoajien välillä ja diagnosoida ongelmia.
    Android 12 -mobiilialustan julkaisu
  • Lisätty mahdollisuus luoda kuvakaappauksia, jotka peittävät näkyvän alueen lisäksi myös vieritysalueen sisällön. Mahdollisuus pitää sisältöä näkyvän alueen ulkopuolella toimii kaikissa sovelluksissa, jotka käyttävät View-luokkaa tulostukseen. ScrollCapture API -sovellusta on ehdotettu tuen toteuttamiseksi kuvakaappausten vierittämiselle ohjelmissa, jotka käyttävät tiettyjä rajapintoja.
    Android 12 -mobiilialustan julkaisu
  • Automaattinen näytön sisällön kiertotoiminto on parannettu, ja se voi nyt käyttää etukameran kasvojentunnistusta määrittääkseen, tarvitseeko näyttöä kääntää esimerkiksi silloin, kun henkilö käyttää puhelinta makuulla. Luottamuksellisuuden varmistamiseksi tiedot käsitellään lennossa ilman kuvien välivarastointia. Ominaisuus on tällä hetkellä saatavilla vain Pixel 4:lle ja uudemmille älypuhelimille.
  • Parannettu kuva kuvassa -tila (PIP, kuva kuvassa) ja parannettu siirtymätehosteiden tasaisuus. Jos otat käyttöön automaattisen PIP-siirtymän ylös-to-home-eleellä (siirtämällä näytön alaosaa ylöspäin), sovellus siirtyy nyt heti PIP-tilaan odottamatta animaation valmistumista. Parannettu PIP-ikkunoiden koon muuttaminen ei-videosisällöllä. Lisätty mahdollisuus piilottaa PIP-ikkuna vetämällä se näytön vasempaan tai oikeaan reunaan. Käyttäytyminen PIP-ikkunan kosketuksessa on muuttunut – yhdellä kosketuksella näytetään nyt ohjauspainikkeet ja kaksoiskosketus muuttaa ikkunan kokoa.
  • Suorituskyvyn optimoinnit:
    • Järjestelmän suorituskykyä optimoitiin merkittävästi - pääjärjestelmän palveluiden suorittimen kuormitus laski 22%, mikä puolestaan ​​johti akun käyttöiän pidentymiseen 15%. Vähentämällä lukituskiistaa, vähentämällä latenssia ja optimoimalla I/O:n tehokkuus sovelluksesta toiseen siirtymisessä paranee ja sovelluksen käynnistysaika lyhenee.

      Kun PackageManagerissa käsitellään tilannekuvia vain luku -tilassa, lukituskilpa vähenee 92 %. Binderin prosessien välinen viestintämoottori käyttää kevyttä välimuistia, joka vähentää viivettä jopa 47-kertaiseksi tietyntyyppisissä puheluissa. Parempi suorituskyky dex-, odex- ja vdex-tiedostojen käsittelyssä, mikä nopeuttaa sovellusten latausaikoja erityisesti laitteissa, joissa on vähän muistia. Sovellusten käynnistämistä ilmoituksista on nopeutettu, esimerkiksi Google Kuvien käynnistäminen ilmoituksesta on nyt 34 % nopeampaa.

      Tietokantakyselyiden suorituskykyä on parannettu käyttämällä CursorWindow-toiminnon sisäisiä optimointeja. Pienille tietomäärille CursorWindow on tullut 36 % nopeammaksi, ja yli 1000 rivin sarjoissa nopeus voi olla jopa 49-kertainen.

      Laitteiden luokittelemiseksi suorituskyvyn mukaan ehdotetaan kriteerejä. Laitteen ominaisuuksien perusteella sille on määritetty suorituskykyluokka, jota voidaan sitten käyttää sovelluksissa rajoittamaan koodekkien toimivuutta pienitehoisissa laitteissa tai käsittelemään laadukkaampaa multimediasisältöä tehokkaalla laitteistolla.

    • Sovelluksen lepotila on otettu käyttöön, joka mahdollistaa, jos käyttäjä ei ole ollut nimenomaisesti vuorovaikutuksessa ohjelman kanssa pitkään aikaan, nollata automaattisesti sovellukselle aiemmin myönnetyt käyttöoikeudet, pysäyttää suorituksen, palauttaa sovelluksen käyttämät resurssit, kuten muistin, ja estää taustatyön käynnistämisen ja push-ilmoitusten lähettämisen. Tilaa voidaan käyttää useimmissa sovelluksissa, ja sen avulla voit suojata käyttäjätietoja, joihin kauan unohdetuilla ohjelmilla on edelleen pääsy. Haluttaessa horrostila voidaan kytkeä pois päältä asetuksista.
    • Animaatio näyttöä käännettäessä on optimoitu, mikä vähentää viivettä ennen kääntämistä noin 25 %.
    • Rakenteeseen kuuluu uusi korkean suorituskyvyn hakukone AppSearch, jonka avulla voit indeksoida laitteen tietoja ja tehdä kokotekstihakuja rankingtuloksilla. AppSearch tarjoaa kahdentyyppisiä indeksejä - hakujen järjestämiseen yksittäisissä sovelluksissa ja koko järjestelmästä.
    • Lisätty Game Mode API ja vastaavat asetukset, joiden avulla voit hallita pelin suorituskykyprofiilia – voit esimerkiksi uhrata suorituskyvyn pidentääksesi akun käyttöikää tai käyttää kaikkia käytettävissä olevia resursseja maksimaalisen FPS:n saavuttamiseksi.
    • Lisätty play-as-you-download-toiminto, jolla voit ladata peliresursseja taustalla asennuksen aikana, jolloin voit aloittaa pelaamisen ennen kuin lataus on valmis. sovellus.
    • Lisääntynyt reagointikyky ja reaktionopeus ilmoitusten kanssa työskennellessä. Esimerkiksi kun käyttäjä napauttaa ilmoitusta, se ohjaa hänet nyt välittömästi liittyvään sovellukseen. Sovellukset rajoittavat ilmoitustrampoliinien käyttöä.
    • Optimoidut IPC-kutsut Binderissä. Uuden välimuististrategian ja lukituskiistan eliminoimisen ansiosta latenssi väheni merkittävästi. Kaiken kaikkiaan Binder-puhelun suorituskyky on karkeasti kaksinkertaistunut, mutta joillakin alueilla on saavutettu vieläkin merkittävämpiä nopeuksia. Esimerkiksi refContentProvider():n kutsuminen muuttui 47 kertaa nopeammaksi, releaseWakeLock():n kutsuminen 15 kertaa nopeammaksi ja JobScheduler.schedule() 7.9 kertaa nopeammaksi.
    • Mahdollisten suorituskykyongelmien estämiseksi sovelluksia ei saa ajaa etualan palveluita, kun ne toimivat taustalla, lukuun ottamatta muutamia erikoistapauksia. Työn aloittamiseksi taustalla on suositeltavaa käyttää WorkManageria. Siirtymisen yksinkertaistamiseksi JobSchedulerissa on ehdotettu uudenlaista työtä, joka alkaa välittömästi, on lisännyt prioriteettia ja verkkoon pääsyä.
  • Turvallisuuteen ja yksityisyyteen vaikuttavat muutokset:
    • Privacy Dashboard -käyttöliittymä on toteutettu yleiskatsauksella kaikista käyttöoikeusasetuksista, jonka avulla voit ymmärtää, mihin käyttäjätietosovelluksilla on pääsy. Käyttöliittymä sisältää myös aikajanan, joka visualisoi sovelluksen mikrofonin, kameran ja sijaintitietojen käyttöhistorian. Voit tarkastella jokaisen sovelluksen tietoja ja syitä arkaluonteisten tietojen käyttämiseen.
      Android 12 -mobiilialustan julkaisu
    • Paneeliin on lisätty mikrofoni ja kameran toimintailmaisimet, jotka tulevat näkyviin, kun sovellus käyttää kameraa tai mikrofonia. Kun napsautat ilmaisimia, näkyviin tulee asetusten valintaikkuna, josta voit määrittää, mikä sovellus toimii kameran tai mikrofonin kanssa, ja tarvittaessa peruuttaa käyttöoikeudet.
    • Pika-asetusten ponnahduslohkoon on lisätty kytkimet, joilla voi sammuttaa mikrofonin ja kameran väkisin. Kun kamera ja mikrofoni on kytketty pois päältä, sovellukselle lähetetään ilmoitus ja tyhjiä tietoja.
      Android 12 -mobiilialustan julkaisu
    • Lisätty uusi ilmoitus, joka tulee näkyviin näytön alareunaan aina, kun sovellus yrittää lukea leikepöydän sisältöä kutsumalla getPrimaryClip()-funktiota. Jos leikepöydän sisältö kopioidaan samaan sovellukseen, johon se lisättiin, ilmoitusta ei tule näkyviin.
    • Lisätty erillinen lupa BLUETOOTH_SCAN etsiä lähellä olevia laitteita Bluetoothin kautta. Aiemmin tämä ominaisuus perustui pääsyyn laitteen sijaintitietoihin, mikä johti tarpeeseen myöntää lisäoikeuksia sovelluksille, jotka vaativat pariliitoksen muodostamisen toisen laitteen kanssa Bluetoothin kautta.
    • Laitteen sijaintitietoihin pääsyn tarjoava valintaikkuna on modernisoitu. Käyttäjällä on nyt mahdollisuus antaa sovellukselle tiedot tarkasta sijainnista tai antaa vain likimääräisiä tietoja sekä rajoittaa valtuutus vain aktiiviseen istuntoon ohjelman kanssa (estää pääsy taustalla). Likimääräistä sijaintia valittaessa palautettujen tietojen tarkkuustasoa voidaan muuttaa asetuksissa, myös yksittäisten sovellusten osalta.
      Android 12 -mobiilialustan julkaisu
    • Sovelluskehittäjille annetaan mahdollisuus poistaa käytöstä ponnahdusikkunat, jotka ovat päällekkäisiä sisällön kanssa. Aikaisemmin päällekkäisten ikkunoiden näyttämistä ohjattiin vaatimalla käyttöoikeuksien tarkistamista päällekkäisiä ikkunoita näyttävien sovellusten asennuksen aikana. Käytettävissä ei ollut työkaluja, jotka vaikuttaisivat päällekkäisten sovellusten sisällön päällekkäisyyteen. Kun käytät Window#setHideOverlayWindows()-kutsua, kaikki päällekkäiset ikkunat piilotetaan nyt automaattisesti. Esimerkiksi piilottaminen voidaan ottaa käyttöön, kun näytetään erityisen tärkeitä tietoja, kuten tapahtumavahvistus.
    • Sovelluksille annetaan lisäasetuksia ilmoitustoimintojen rajoittamiseksi näytön ollessa lukittuna. Aiemmin sinulla oli mahdollisuus hallita ilmoitusten näkyvyyttä vain näytön ollessa lukittuna, mutta nyt voit ottaa käyttöön pakollisen todennuksen suorittaaksesi mitä tahansa toimintoja ilmoituksilla näytön ollessa lukittuna. Esimerkiksi viestisovellus saattaa vaatia todennuksen ennen viestin poistamista tai merkitsemistä luetuksi.
    • Lisätty PackageManager.requestChecksums() API pyytämään ja tarkistamaan asennetun sovelluksen tarkistussumma. Tuettuja algoritmeja ovat SHA256, SHA512 ja Merkle Root.
    • WebView-verkkomoottori toteuttaa mahdollisuuden käyttää SameSite-attribuuttia evästeiden käsittelyn ohjaamiseen. Arvo "SameSite=Lax" rajoittaa evästeen lähettämistä sivustojen välisiin alipyyntöihin, kuten kuvan pyytämiseen tai sisällön lataamiseen iframe-kehyksen kautta toisesta sivustosta. "SameSite=Strict" -tilassa evästeitä ei lähetetä minkäänlaisiin sivustojen välisiin pyyntöihin, mukaan lukien kaikki ulkoisilta sivustoilta saapuvat linkit.
    • Jatkamme MAC-osoitteiden satunnaistamista, jotta laitteiden seuranta ei ole mahdollista, kun se on yhdistetty langattomaan verkkoon. Epäoikeutetuilla sovelluksilla on rajoitettu pääsy laitteen MAC-osoitteeseen, ja kutsu getHardwareAddress() palauttaa nyt nolla-arvon.
  • Matalan tason muutokset ja parannukset sovellusten kehittäjille:
    • Lisätty mahdollisuus mukauttaa käyttöliittymäelementtejä laitteisiin, joissa on pyöristetyt näytöt. Kehittäjät voivat nyt saada tietoa näytön pyöristyksistä ja säätää käyttöliittymäelementtejä, jotka osuvat näkymättömiin kulma-alueisiin. Uuden RoundedCorner API:n avulla voit selvittää parametrit, kuten pyöristyksen säteen ja keskikohdan, ja Display.getRoundedCorner()- ja WindowInsets.getRoundedCorner()-ohjelmien avulla voit määrittää näytön jokaisen pyöristetyn kulman koordinaatit.
      Android 12 -mobiilialustan julkaisu
    • Uusi CompanionDeviceService API on lisätty, jonka avulla voit aktivoida sovelluksia, jotka ohjaavat seuralaitteita, kuten älykelloja ja kuntoseurantalaitteita. API ratkaisee tarvittavien sovellusten käynnistämisen ja yhdistämisen ongelman, kun kumppanilaite ilmestyy lähelle. Järjestelmä aktivoi palvelun, kun laite on lähellä ja lähettää ilmoituksen, kun laite katkeaa tai kun laite saapuu tai poistuu alueelta. Sovellukset voivat myös käyttää uutta lisälaiteprofiilia laitteeseen liittymisoikeuksien määrittämiseen helpommin.
    • Parannettu kapasiteetin ennustejärjestelmä. Sovellukset voivat nyt pyytää tietoja ennustetusta kokonaissuorituskyvystä suhteessa operaattoriin, tiettyyn langattomaan verkkoon (Wi-Fi SSID), verkkotyyppiin ja signaalin voimakkuuteen.
    • Yleisten visuaalisten tehosteiden, kuten hämärtymisen ja värivääristymän, soveltamista on yksinkertaistettu, ja niitä voidaan nyt soveltaa RenderEffect API:lla mihin tahansa RenderNode-objektiin tai koko näkyvälle alueelle, myös muiden tehosteiden ketjussa. Tämän ominaisuuden avulla voit esimerkiksi sumentaa ImageView'n kautta näkyvää kuvaa ilman, että bittikartta erikseen kopioidaan, käsitellään ja vaihdetaan, jolloin nämä toiminnot siirretään alustan puolelle. Lisäksi ehdotetaan Window.setBackgroundBlurRadius() API:ta, jolla voit sumentaa ikkunan taustaa himmeällä lasilla ja korostaa syvyyttä sumentamalla ikkunaa ympäröivää tilaa.
      Android 12 -mobiilialustan julkaisu
    • Integroidut työkalut mediavirtojen transkoodaamiseen, joita voidaan käyttää ympäristöissä, joissa on kamerasovellus, joka tallentaa videon HEVC-muodossa, jotta voidaan varmistaa yhteensopivuus sovellusten kanssa, jotka eivät tue tätä muotoa. Tällaisissa sovelluksissa yleisempään AVC-muotoon on lisätty automaattinen transkoodaustoiminto.
    • Lisätty tuki AVIF (AV1 Image Format) -kuvamuodolle, joka käyttää AV1-videon koodausmuodon kehyksen sisäistä pakkaustekniikkaa. Säiliö pakatun tiedon jakelua varten AVIF:ssä on täysin samanlainen kuin HEIF. AVIF tukee sekä HDR-kuvia (High Dynamic Range) ja laajaa väriavaruutta että vakiodynamiikka-aluetta (SDR).
    • Yhtenäistä OnReceiveContentListener API:ta ehdotetaan laajennetun sisällön (muotoiltu teksti, kuvat, videot, äänitiedostot jne.) lisäämiseen ja siirtämiseen sovellusten välillä käyttämällä erilaisia ​​tietolähteitä, mukaan lukien leikepöytä, näppäimistö ja vedä ja pudota -käyttöliittymä.
    • Puhelimeen sisäänrakennetulla tärinämoottorilla toteutettu kosketuspalauteefekti on lisätty, jossa tärinän taajuus ja voimakkuus riippuvat kulloinkin toistettavan äänen parametreista. Uuden tehosteen avulla voit tuntea äänen fyysisesti ja sitä voidaan käyttää lisäämään realistisuutta peleihin ja ääniohjelmiin.
    • Immersive-tilassa, jossa ohjelma näytetään koko näytössä huoltopaneelit piilotettuina, navigointia yksinkertaistetaan ohjauseleiden avulla. Esimerkiksi kirjoja, videoita ja valokuvia voidaan nyt navigoida yhdellä pyyhkäisyeleellä.
    • Osana Mainline-projektia, jonka avulla voit päivittää yksittäisiä järjestelmäkomponentteja koko alustaa päivittämättä, on valmistettu uusia päivitettäviä järjestelmämoduuleja Android 22:ssä saatavilla olevien 11 moduulin lisäksi. Päivitykset vaikuttavat ei-laitteistokomponentteihin, jotka ladataan Google Play erillään valmistajan OTA-laiteohjelmistopäivityksistä. Uusien moduulien joukossa, jotka voidaan päivittää Google Playn kautta ilman laiteohjelmiston päivittämistä, ovat ART (Android Runtime) ja videon transkoodausmoduuli.
    • WindowInsets-luokkaan on lisätty API, joka määrittää kameran ja mikrofonin käyttöilmaisimien näytön sijainnin (ilmaisimet voivat mennä päällekkäin ohjelmissa, jotka on otettu käyttöön koko näytön tilassa, ja määritetyn API:n kautta sovellus voi säätää käyttöliittymäänsä).
    • Keskitetysti hallittaville laitteille on lisätty vaihtoehto, joka estää kytkimien käytön mikrofonin ja kameran mykistykseen.
    • Taustalla toimiville CDM (Companion Device Manager) -sovelluksille, jotka ohjaavat lisälaitteita, kuten älykelloja ja kuntoseurantalaitteita, on mahdollista käynnistää etualan palvelut.
    • Puettavien laitteiden version sijaan Android Wear päätti yhdessä Samsungin kanssa kehittää uuden yhtenäisen alustan, joka yhdistää Androidin ja Tizenin ominaisuudet.
    • Android-versioiden ominaisuuksia autojen infotainment-järjestelmille ja älytelevisioille on laajennettu.

    Lähde: opennet.ru

  • Lisää kommentti