Android 11:n kolme parasta ominaisuutta eivät näy kaikissa älypuhelimissa ja tableteissa. Tämä johtuu siitä, että Google ei vaadi näitä ominaisuuksia.
Google julkaisee joka vuosi uuden version Android-käyttöjärjestelmästä. Google julkaisi ensimmäisen Android 11 -kehittäjän esikatselun helmikuussa, jota seurasi toinen, kolmas ja neljäs kehittäjien esikatselu muutaman viime kuukauden aikana. Google julkisti aiemmin tässä kuussa ensimmäinen Android 11 Beta ja puhui perusteellisesti parhaista ominaisuuksista, joista käyttäjät voivat nauttia ja kehittäjät voivat ottaa käyttöön. Olemme kuitenkin nyt oppineet, että kolme Android 11:n tärkeimmistä ominaisuuksista eivät ole käytettävissä kaikilla Android-laitteilla.
Ymmärtääksemme, kuinka se on mahdollista, meidän on selitettävä lyhyesti, kuinka Android-käyttöjärjestelmä jaetaan Googlelta älypuhelinten valmistajille. Android on avoimen lähdekoodin käyttöjärjestelmä lisensoitu Apache 2.0:lla, mikä tarkoittaa, että kuka tahansa indie-kehittäjistä suuriin yrityksiin voi vapaasti muokata ja jakaa käyttöjärjestelmää omilla laitteillaan. Suurin osa uusista käyttöjärjestelmän ominaisuuksista, jotka Google julkisti Android 11:lle, tulee olemaan osa älypuhelimen Android Open Source Project (AOSP) -projektia. laitevalmistajat perustavat oman ohjelmistonsa, mutta Apache 2.0 -lisenssi, kuten aiemmin mainitsin, antaa kenen tahansa muokata ohjelmistoa näkemyksensä mukaan sovi. Säilyttääkseen sovellusliittymien ja alustan käyttäytymisen johdonmukaisuuden Android-laitteiden välillä Google yhdistää Googlen mobiilipalvelujen jakelun (johon kuuluvat mm. sovellukset ja kehykset, kuten Google Play Kauppa ja Google Play Palvelut) lisenssisopimuksilla, jotka velvoittavat laitteiden noudattamaan Googlen sääntöjä. "
Android-yhteensopivuusohjelma" (muiden vaatimusten ohella). Android-yhteensopivuusohjelma koostuu useista automaattisista testiohjelmista ja säännöistä, jotka on lueteltu Androidissa. Yhteensopivuusmääritelmäasiakirja (CDD).CDD: ssä Google luettelee ohjelmisto- ja laitteisto-ominaisuudet, jotka laitevalmistajien "TÄYTYY" ottaa käyttöön, jotka ovat vain "VAHVASTI SUOSITTELETTU" ottaa käyttöön tai "EI PIDÄ" ottaa käyttöön. Jos ominaisuus on listattu "PAKOLLINEN" -toteutuksena, laitteen valmistajan on lisättävä kyseinen ominaisuus tai hän ei voi toimittaa Google-sovelluksia laitteilleen. Jos ominaisuus on luettelossa "EI PITÄÄ" toteuttaa, laitteen valmistaja ei voi lisätä kyseistä ominaisuutta tai se ei voi niputtaa Google-sovelluksia. Lopuksi, jos ominaisuus on luettelossa "VAHVASTI SUOSITELTU", laitevalmistaja päättää, haluaako hän ottaa ominaisuuden käyttöön vai ei. CDD on jatkuvasti muuttuva asiakirja, jopa ennen sen julkaisemista joka vuosi uuden Android-version julkistamisen jälkeen. Google päivittää asiakirjaa usein poistaakseen ominaisuuksia, muuttaakseen kieltä selkeämmäksi ja lieventääkseen vaatimuksia kumppaneilta saamansa palautteen perusteella. Kuitenkin, kun Google julkaisee CDD: n tietylle Android-versiolle, nämä vaatimukset on hakattu kiveen Googlen hyväksymille laitteille, jotka käyttävät kyseistä Android-käyttöjärjestelmän versiota.
Android 11 CDD tulee julkiseksi vasta myöhemmin tänä vuonna, todennäköisesti syyskuun alussa. Kuitenkin kehittäjä @deletescape jakoi julkaisua edeltävän kopion asiakirjasta, jossa kerrotaan CDD: hen tulevista muutoksista, mikä antaa meille varhaisen katsauksen siihen, miten Google muokkaa Android 11:tä ekosysteemissä. Suurin osa CDD: n yli 60 muutoksesta ei ole kovin kiinnostavaa käyttäjille – ne kuvaavat, kuinka laitevalmistajien on otettava käyttöön tietyt API: t, ilmoitettava tietyt ominaisuudet ja otettava käyttöön tietty ydin ominaisuudet. Kuitenkin kolme CDD: n muutoksesta kiinnitti huomiomme, koska ne liittyvät joihinkin Android 11:n mielenkiintoisimpiin ominaisuuksiin. Tässä on mitä löysimme.
Laitteen ohjaimet
Device Controls on Android 11:n ominaisuus, joka mahdollistaa älykkään kodin automaation ohjaimien näyttämisen virtavalikossa. Voit sammuttaa valot, avata autotallin oven, käynnistää pölynimurin, muuttaa kotisi lämpötilaa ja tehdä paljon muuta avaamatta tusinaa erilaista älykkään kodin sovellusta. Google lisäsi sovellusliittymiä, joita älykkään kodin sovellusten kehittäjät voivat käyttää ohjatakseen virtavalikossa. Mielestämme tämä on siisti ominaisuus tuo älypuhelimesi vihdoin älykkään kotiin. Valitettavasti OEM-valmistajilta ei vaadita todellista käyttöönottoa. Jos OEM-valmistaja pitää ominaisuutta huonona tai he haluavat valita toisen reitin (kuten sallia vain smart kodin ohjaimia laitteista omassa ekosysteemissään), he voivat yksinkertaisesti poistaa laitteen tuen käytöstä Säätimet.
Kun Google lisäsi laiteohjaukset CDD: hen ensimmäisen kerran 25. helmikuuta 2020, se määräsi sen sisällyttämisen lisäämällä kohtaan 2.2.3 – Kämmenlaitteiden ohjelmistovaatimukset -vaatimus MUST. Google kuitenkin päivitti tekstiä 20. toukokuuta 2020 poistaakseen ehdotetun "MUST". Uusi Kohta 3.8.16 - Laiteohjaukset hahmotellaan, kuinka ominaisuus on otettava käyttöön, mutta se ei itse asiassa edellytä sen käyttöönottoa! Toivomme, että OEM-valmistajat eivät poista tätä hienoa ominaisuutta käytöstä, mutta emme voi tietää, ovatko he poistaneet sen käytöstä, ennen kuin he valmiita paljastamaan omat Android-makunsa, jotka on rakennettu Android 11:n päälle, mikä tapahtuu vasta useita kuukausia nyt.
Ehdotettu kohta 3.8.16 (uusi) – Laiteohjaimet (päivitetty 20.5.2020)
3.8.16 Laitteen ohjaimet
Android sisältää ControlsProviderService- ja Control-sovellusliittymiä, joiden avulla kehittäjät voivat julkaista laiteohjaimet käyttäjien nopeaa tilaa ja toimintaa varten.
3.8.16.1 Laite ohjaa käyttäjien mahdollisuuksia
Jos laitteet käyttävät laiteohjauksia, ne:
- [C-1-1] PITÄÄ ilmoittaa android.software.controls.feature-lipun olevan TOSI
- [C-1-2] TÄYTYY tarjota käyttäjälle mahdollisuus lisätä, muokata, valita ja käyttää käyttäjän suosikkeja ohjaimista, jotka kolmannen osapuolen sovellukset ovat rekisteröineet android.service.controls-tiedoston kautta. ControlsProviderService ja android.service.controls. Ohjaussovellusliittymät.
- [C-1-3] TÄYTYY tarjota pääsy tälle käyttäjälle kolmen vuorovaikutuksen aikana käynnistysohjelmasta
- [C-1-4] TÄYTYY esittää tarkasti tässä käyttäjässä jokaisen sellaisen kolmannen osapuolen sovelluksen nimi ja kuvake, joka tarjoaa ohjaimia android.service.controls-osoitteen kautta. ControlsProviderService API sekä mitkä tahansa määritetyt kuvakkeet, tilateksti, laitetyyppi, nimi, rakenne, vyöhyke, mukautettu väri ja alaotsikko, jonka android.service.controls tarjoaa. Control API
Kääntäen, jos laitetoteutukset eivät toteuta tällaisia ohjaimia, niin ne
- [C-2-1] TÄYTYY raportoida ControlsProviderServicen ja Control API: iden nolla.
Lue lisää
Keskustelut Ilmoituksissa
Yksi Androidin suurimmista eduista iOS: ään verrattuna on se, miten edellinen käsittelee ilmoituksia. Tämä käytettävyyden kuilu kasvaa entisestään Android 11:ssä "Keskustelujen" käyttöönoton myötä. Android 11:ssä ilmoitukset viestisovellukset on ryhmitelty yhteen ja näkyvät erillisessä osiossa ilmoituspaneelissa useimpien muiden yläpuolella ilmoituksia. Näin voit nopeasti nähdä viestit ja vastata niihin ilman, että sinun tarvitsee selata kaikkia muita odottavia ilmoituksia. Valitettavasti tämä hieno muutos ilmoituksiin ei välttämättä ole käytettävissä kaikilla laitteilla. Google antaa OEM-valmistajille mahdollisuuden valita, haluavatko he "ryhmitellä ja näyttää keskusteluilmoituksia etukäteen ei-keskusteluilmoitukset." OEM-valmistajat muokkaavat usein ilmoituspaneelia, joten ei ole yllätys, että Google antaa OEM-valmistajille valinta tässä. Silti on valitettavaa, että Google ei halua pakottaa ilmoitusten johdonmukaisuutta Android 11:ssä.
Ehdotetut muutokset kohtaan 3.8.3.1 – Ilmoitusten esittäminen (Päivitetty 4.8.2020)
Jos laitetoteutuksella kolmannen osapuolen sovellukset voivat ilmoittaa käyttäjille merkittävistä tapahtumista, ne:
...
Android R ottaa käyttöön keskusteluilmoituksen tuen, joka on NotificationManageria käyttävä ilmoitus. MessageStyle ja tarjoaa julkaistun People Shortcut ID: n.
Laitetoteutukset ovat:
- [H-SR] SUOSITTELEESTI ryhmittelemään ja näyttämään keskusteluilmoitukset ennen kuin keskustelua ei käytetä ilmoitukset lukuun ottamatta meneillään olevia etualan palveluilmoituksia ja tärkeys: korkea ilmoituksia.
Jos keskusteluilmoitukset on ryhmitelty erilliseen osioon, laitetoteutukset
- [H-1-8] TÄYTYY näyttää keskusteluilmoitukset ennen muita kuin keskusteluun liittyviä ilmoituksia, paitsi jatkuvat etualalla olevat palveluilmoitukset ja tärkeys: korkeat ilmoitukset.
Laitetoteutukset ovat:
- [H-SR] SUOSITTELETAAN, että annat pääsyn seuraaviin toimintoihin keskusteluilmoituksista: näytä tämä keskustelu kuplana, jos sovellus tarjoaa vaadittavat tiedot kuplia varten
AOSP-toteutus täyttää nämä vaatimukset järjestelmän oletuskäyttöliittymän, asetusten ja käynnistysohjelman kanssa.
Lue lisää
IdentityCredential – matkapuhelimen ajokortit
Lopuksi yksi ominaisuuksista, joista olen eniten innoissani, on IdentityCredential API. Kuten viime vuonna kerroimme, IdentityCredential API on suunniteltu sallimaan sovellusten tallentaa henkilöllisyysasiakirjoja, kuten mobiiliajokortteja, laitteeseen. Useat maat (ja jotkin Yhdysvaltojen osavaltiot) ympäri maailmaa sallivat jo kansalaistensa tallentaa ajokorttinsa mobiilisovellukseen. Google kuitenkin pyrkii parantamaan tämän turvallisuutta säilyttämällä tiedot offline-tilassa suojatussa ympäristössä.
Android 11:n lähdekoodi sisältää IdentityCredential API: n (johon kehittäjät soittavat tallentaakseen henkilöllisyysasiakirjoja puhelimen suojattu ympäristö) ja IdentityCredential HAL (joka on rajapinta puhelimen suojatun ympäristön kanssa), mutta OEM-valmistajilta ei vaadita toteuttaa ne. Kun Google ehdotti ensimmäisen kerran IdentityCredentialin sisällyttämistä CDD: hen 10. tammikuuta 2020, se listasi sen vaatimuksena. He kuitenkin lievensivät tätä vaatimusta 18. maaliskuuta 2020 ja suosittelevat nyt vain vahvasti, että OEM-valmistajat tukevat tätä ominaisuutta. Emme ole yllättyneitä siitä, että Google lievensi tätä vaatimusta – luotettuun suoritusympäristöön vaikuttavan muutoksen lisääminen vaatii OEM-valmistajilta ponnisteluja. On mahdollista, että OEM-valmistajat tarvitsevat vain enemmän aikaa valmistautuakseen tähän muutokseen. Käyttäjille tämä ei kuitenkaan tarkoita, että Android 11 -älypuhelimesi tukee mobiiliajokortin turvallista säilyttämistä puhelimen suojatussa ympäristössä.
Huomaa, että mikään tekninen rajoitus ei estä IdentityCredential-järjestelmän laajaa käyttöönottoa Android 11 -laitteissa. Yksi IdentityCredential-järjestelmän käyttöönoton vaatimuksista on, että laitteessa on Trusted Execution Ympäristö (TEE) tai suojattu prosessori, jossa "luotettu sovellus" on vuorovaikutuksessa tallennetun identiteetin kanssa asiakirjoja. Android 7.0 Nougatin jälkeen Google on vaatinut kaikkien nykyaikaisten Android-laitteiden tukemaan "eristettyä suoritusympäristöä" (per Kohta 2.2.5 - CDD: n suojausmalli). ARM-suorittimilla varustetut laitteet sisältävät yleensä ARM-prosessorit TrustZone TEE, ja Google tarjoaa Luotettava käyttöjärjestelmä joka toimii TrustZonessa. TEE: n olemassaolo riittää tukemaan IdentityCredential-järjestelmää, vaikka olisikin turvallisempaa, jos tunnistetiedot tallennettaisiin sulautettuun suojattuun prosessoriin (kuten Joidenkin Qualcomm Snapdragon -suorittimien suojattu käsittelyyksikkö) tai erillinen suojattu prosessori (kuten in Googlen Titan M tai Samsungin uudet tietoturvasirut). Erityisesti laitteet, joissa on erilliset suojatut suorittimet, voivat myös pystyä tukemaan IdentityCredential-järjestelmän "Direct Access mode" -ominaisuutta, jonka avulla käyttäjä voi vetää esiin henkilöllisyystodistuksensa, vaikka laitteessa ei olisi tarpeeksi virtaa jäljellä pääkäyttöjärjestelmän käynnistämiseen.
Ehdotettu kohta 9.11.3 (uusi) – Henkilöllisyystodistus (päivitetty 18.3.2020)
Identity Credential System -järjestelmän avulla sovelluskehittäjät voivat tallentaa ja hakea käyttäjän henkilöllisyysasiakirjoja.
Laitteen toteutukset:
- [C-SR] on TODELLA SUOSITTELETTU Identity Credential Systemin toteuttamiseen.
Jos laitetoteutukset toteuttavat Identity Credential System -järjestelmän, ne:
- [C-0-1] PITÄÄ palauttaa ei-nolla arvolle IdentityCredentialStore#getInstance() menetelmä.
- [C-0-2] TÄYTYY ottaa käyttöön android.security.identity.*-sovellusliittymät koodilla, joka viestii luotettavan sovellus, joka toimii joko Trusted Execution Environment (TEE) -ympäristössä tai erillisessä suojatussa tilassa prosessori. Luotettu sovellus on toteutettava siten, että Luotettu tietokanta Identity Credential System ei sisällä Android-käyttöjärjestelmää.
Lue lisää
Google työskentelee myös IdentityCredential Jetpack -kirjaston parissa, jotta kehittäjien olisi helpompi lisätä tukea henkilöllisyyden turvalliseen tallentamiseen. Android-asiakirjoja, mutta todellinen haaste on saada hallitukset valtuuttamaan tätä sovellusliittymää käyttävät sovellukset tallentamaan viranomaistunnuksia turvallisesti. Mukaan Engadget, Etelä-Korea otti juuri käyttöön tuen ajokorttien tallentamiseen mobiilisovellukseen, joten alamme nähdä tämän tekniikan hyväksynnän lisääntyvän. Ensinnäkin, olen innoissani nähdessäni, mihin tämä johtaa, koska se tarkoittaa yhtä vähemmän kantamista mukanani, kun menen ulos.
Hankimassamme asiakirjassa lueteltiin CDD: n muutokset päivämäärään mennessä, jolloin muutokset tehtiin. Viimeisimmät muutokset on tehty 10.6.2020, mikä tarkoittaa, että meillä oleva dokumentti on melko ajan tasalla. On mahdollista, että Google voi luopua näistä muutoksista ja asettaa ne kaikki vaatimukset uudelleen ennen Android 11:n julkista julkaisua, mutta epäilemme, että Google tekee yhtäkkiä CDD: n lisää tiukka. Näitä muutoksia lievennettiin todennäköisesti OEM-valmistajilta saadun palautteen vuoksi. Niiden on palattava takaisin ja otettava nämä ominaisuudet käyttöön, jos niitä ei ole jo suunniteltu. Se vie aikaa, vaivaa ja rahaa, mikä vain viivästyttää Android 11:n julkaisua muille kuin Googlen laitteille entisestään. Silti, jos Google vaatii näitä ominaisuuksia vielä kerran, julkaisemme päivityksen XDA-portaalissa.