Google je izdal prvi Android 11 Developer Preview za Pixel 2, 3, 3a in 4. Tukaj so vse nove funkcije zasebnosti in varnosti, ki so jih napovedali.
Pred rokom, Google danes izdal prvi predogled za razvijalce naslednje različice operacijskega sistema Android: Android 11. Sistemske slike so na voljo za Pixel 2, Pixel 3, Pixel 3a, Pixel 4, vendar če nimate enega od teh naprave, lahko preizkusite tudi Developer Preview prek emulatorja Android Studio ali Generic System Slika. Čeprav Google večino razburljivih novih uporabniških in razvijalskih funkcij prihrani za veliko objavo na Google I/O 2020, je podjetje delilo obilico sprememb, ki so na voljo v prvem predogledu za razvijalce. Tukaj je povzetek vseh novih funkcij, povezanih z zasebnostjo in varnostjo, ki jih je Google napovedal v Android 11 Developer Preview 1.
Android 11 Developer Preview 1 – Nove funkcije zasebnosti
Enkratni dostop z dovoljenjem
Android nadzoruje, do katerih vrst podatkov lahko aplikacije dostopajo prek svojega sistema dovoljenj. Pred Androidom 6.0 Marshmallow so aplikacije ob namestitvi zahtevale dodelitev dovoljenj, zato so se morali uporabniki odločiti, ali so v redu, da ima aplikacija določena dovoljenja, preden so jo namestili. Android 6.0 Marshmallow je uvedel dovoljenja za čas izvajanja za izbran nabor občutljivih dovoljenj, vključno z dostopom do lokacije, dostopom do mikrofona in dostopom do kamere. Dovoljenja za izvajanje je mogoče dodeliti šele po namestitvi, aplikacija, ki jih zahteva, pa mora uporabnika prek pogovornega okna, ki ga zagotovi sistem, pozvati, da omogoči dostop. Končno je Google v Androidu 10 predstavil posebno različico dovoljenja za čas izvajanja, ki uporabniku omogoča odobritev dostopa le, ko je aplikacija v aktivni uporabi; vendar je Google uvedel le možnost "medtem ko je aplikacija v uporabi" za dovoljenje za lokacijo.
V sistemu Android 11 Google uporabnikom omogoča bolj natančen nadzor nad drugimi občutljivimi dovoljenji, vključno z dostopom do kamere in mikrofona. Podjetje je predstavilo novo funkcijo "enkratnega dovoljenja" v predogledu za razvijalce za Android 11, ki omogoča uporabniku, da aplikaciji začasno odobri dostop do dovoljenja, dokler je ta aplikacija v ospredje. Ko uporabnik zapusti aplikacijo, aplikacija izgubi dostop do tega dovoljenja in ga mora znova zahtevati.
Spremembe obsega shranjevanja
notri Android 10 beta 2, je Google predlagal radikalno spremembo načina, kako aplikacije dostopajo do zunanjega pomnilnika v sistemu Android. (Zunanji pomnilnik je tukaj definiran kot podatki, ki so vidni uporabniku in drugim aplikacijam v /data/media.) sprememba, poimenovana "Scoped Storage", je bila namenjena odpravi preveč široke uporabe READ_EXTERNAL_STORAGE dovoljenje. Preveč aplikacij v trgovini Google Play je zahtevalo in dobilo dostop do celotnega zunanjega pomnilnika, kamor so uporabniki shranjevali svoje zasebne dokumente, fotografije, videoposnetke in druge datoteke. S Scoped Storage bi aplikacijam privzeto omogočili samo ogled svojih zasebnih podatkovnih imenikov. Če ima aplikacija dovoljenje READ_EXTERNAL_STORAGE v okviru uveljavljanja Scoped Storage, si lahko ogleda določene medijske datoteke, ki so dostopne prek API-ja MediaStore. Druga možnost je, da aplikacija uporabi ogrodje za dostop do shrambe, da uporabnik ročno izbere datoteke prek sistemskega izbirnika datotek. Nazadnje lahko aplikacije, ki potrebujejo širok dostop do zunanjega pomnilnika, kot so upravitelji datotek, uporabljajo ogrodje za dostop do shrambe, da zahtevajo da uporabnik aplikaciji odobri dostop do korenskega imenika zunanjega pomnilnika in s tem omogoči dostop do vseh njegovih podimenikov, preveč.
Uveljavljanje omejenega shranjevanja je bilo nastavljeno tako, da začne veljati za vse aplikacije v sistemu Android 10, vendar po povratnih informacijah in kritikah razvijalcev, Google sprostil spremembe, zahtevajo pa jih samo za aplikacije, ki ciljajo na raven API-ja 29 (Android 10). Po 1. avgustu 2020 morajo vse nove aplikacije, poslane v trgovino Google Play, ciljati na Android 10 in enako velja za vse posodobitve obstoječih aplikacij po 1. novembru 2020. Poleg tega v sistemu Android 11 razvijalci aplikacij za upravljanje datotek mora oddati obrazec izjave Googlu omogočiti širok dostop do zunanjega pomnilnika; Ko bodo aplikacije za upravljanje datotek sprejete, bodo imele nefiltriran pogled na MediaStore, vendar ne bodo imele dostopa do zunanjih imenikov aplikacij.
Poleg tega je Google uvedel druge spremembe Scoped Storage v predogledu za razvijalce za Android 11. Aplikacije se lahko odločijo za pridobitev neobdelane poti datoteke in izvajanje postopkov paketnega urejanja predstavnostnih datotek v MediaStore. DocumentsUI je bil posodobljen, da je preprostejši za uporabnike. Te spremembe so bile objavljene na Srečanje razvijalcev Androida lani, obljubljene pa so nam dodatne izboljšave Scoped Storage v prihodnjih izdajah Androida 11.
Android 11 Developer Preview 1 – Nove varnostne funkcije
Podpora za mobilno vozniško dovoljenje
Od začetka lanskega leta Google dela na IdentityCredential API in HAL v AOSP. Ta funkcija postavlja temelje za varno shranjevanje identifikacijskih dokumentov na vaši mobilni napravi, zlasti vozniških dovoljenj za mobilne naprave, skladnih s standardom ISO 18013-5. Google uradno je to funkcijo napovedal na Google I/O 2019, zdaj pa je končno podprt v Android 11 Developer Preview 1.
Google v sporočilu za javnost ni imel veliko povedati o tej funkciji, a ker se funkcija razvija na prostem, že vemo veliko tega, kar je načrtovano. Na I/O 2019 je Google izjavil, da sodeluje z ISO pri standardizaciji izvedbe elektronskih potnih listov; še vedno ne vemo, kdaj bodo e-potni listi na voljo, vendar že obstaja več zveznih držav ZDA, kjer so eDL-ji uvedeni ali pa so v poskusni fazi. Google je tudi povedal, da si prizadevajo zagotoviti knjižnico Jetpack, da bi razvijalci lahko ustvarili aplikacije za identifikacijo. Ne vemo pa, kako kmalu bodo razvijalci lahko preizkusili to funkcijo, saj ustrezna podpora zahteva varno strojno opremo v napravi. The Varna procesorska enota na Qualcomm Snapdragon 865 podpira API IdentityCredential, čeprav morda ne podpira načina neposrednega dostopa API-ja, ker je SPU integriran v SoC; Način neposrednega dostopa bi uporabniku omogočil, da potegne shranjeni elektronski ID, tudi če ni dovolj energije za zagon Androida. Za več informacij o tem API-ju priporočam branje naše začetne pokritosti kjer je svoj prispevek prispeval Shawn Willden, vodja varnostne skupine za strojno opremo Android.
Novi glavni moduli projekta
Ena največjih sprememb v sistemu Android 10 za na novo predstavljene naprave je bila uvedba Projekt Mainline, ki kljub svojemu imenu nima nič opraviti s podporo glavnemu jedru Linuxa v sistemu Android. (Mimogrede, ta projekt se imenuje Generic Kernel Image in je še vedno v teku.) Namesto tega je namen Project Mainline za Google bo proizvajalcem originalne opreme prevzel nadzor nad ključnimi komponentami ogrodja in sistemskimi aplikacijami. Vsak modul Mainline je enkapsuliran kot APK ali an APEX datoteko in ga Google lahko posodobi prek Trgovine Play. Uporabnik v svoji napravi vidi posodobitve kot »posodobitev sistema Google Play« (GPSU), posodobitve pa se sproščajo z redno kadenco kot vlak (tj. se prenesejo in namestijo hkrati).
Google zahteva vključitev določenih modulov Mainline, ki jih je v času Google I/O 2019 vključevalo 13. Zdaj Google predpisuje skupno 20 modulov Mainline v Android 11 Developer Preview 1.
Začetni glavni moduli (@ Google I/O 2019) |
Trenutni glavni moduli (za Android 11 Developer Preview 1)* |
---|---|
KOT |
Prijava na Captive Portal |
Prijava na Captive Portal |
Conscrypt |
Conscrypt |
DNS razreševalec |
DNS razreševalec |
Uporabniški vmesnik dokumentov |
Uporabniški vmesnik dokumentov |
ExtServices |
ExtServices |
Medijski kodeki |
Medijski kodeki |
Komponente medijskega ogrodja |
Komponente medijskega ogrodja |
Metapodatki modula |
Metapodatki modula |
Omrežni sklad |
Omrežni sklad |
Konfiguracija dovoljenj za omrežni sklad |
Konfiguracija dovoljenj za omrežni sklad |
Krmilnik dovoljenj |
Krmilnik dovoljenj |
Podatki o časovnem pasu |
Podatki o časovnem pasu |
Nov modul dovoljenj |
Nov modul medijske ponudbe | |
Nov modul API za nevronske mreže (NNAPI). |
*Opomba: v času objave nam Google ni posredoval celotnega seznama modulov Mainline, ki so trenutno potrebni. To tabelo bomo posodobili, ko bomo imeli celoten seznam.
BiometricPrompt Spremembe
Predstavljen Android 9 Pie BiometricPrompt API, enoten API za strojno opremo za biometrično avtentikacijo. API ponuja razvijalcem način, da izzovejo uporabnika prek njihovih shranjenih biometričnih podatkov, naj bo to prstni odtis, obraz ali šarenica. Pred BiometricPromptom so morali razvijalci ustvariti lastno pogovorno okno za preverjanje pristnosti in uporabiti API FingerprintManager, ki je podpiral samo preverjanje pristnosti prstnih odtisov, da bi izzvali uporabnika. Pri pametnih telefonih Galaxy s skenerji šarenice so morali razvijalci uporabiti Samsungov SDK, da bi izzvali uporabnika. Z BiometricPrompt lahko razvijalci uporabnika izzovejo s katero koli podprto biometrično metodo, sistem pa uporabniku ponudi pogovorno okno. Tako razvijalcem ni več treba skrbeti za specifično zagotavljanje podpore za določeno vrsto biometrične strojne opreme, prav tako pa jim ni bilo treba več kodirati uporabniškega vmesnika za pogovorno okno za preverjanje pristnosti. The Varna strojna oprema za prepoznavanje obraza Pixel 4, se lahko na primer uporablja za preverjanje pristnosti v aplikacijah, ki uporabljajo BiometricPrompt.
Kaj je novega za BiometricPrompt v Android 11 Developer Preview 1? Google je dodal 3 nove vrste preverjanja pristnosti: močno, šibko in poverilnico naprave. Pred Androidom 11 so razvijalci lahko poizvedovali samo po varni biometrični strojni opremi naprave – skenerju prstnih odtisov, 3D-skenerju za prepoznavanje obraza ali skenerju šarenice – pri uporabi BiometricPrompt. Od različice Android 11 Developer Preview 1 lahko razvijalci poizvedujejo tudi po biometričnih metodah, ki se štejejo za "šibke", kot so rešitve za prepoznavanje obrazov na osnovi programske opreme, ki jih najdemo v številnih telefonih. Na primer Google prej uvrstil na črno listo več telefonov Samsung Galaxy za vrnitev šibkega avtentifikatorja za prepoznavanje obraza pri poskusu avtentikacije na osnovi kripto. Zdaj je na razvijalcu, da se odloči, kakšno raven razdrobljenosti biometrične avtentikacije potrebuje njihova aplikacija.
Varno shranjevanje in skupna raba BLOB
Nov API, imenovan BlobstoreManager, bo aplikacijam olajšal in varneje medsebojno delil podatkovne bloke. Google navaja aplikacije, ki si delijo modele strojnega učenja, kot idealen primer uporabe novega API-ja BlobstoreManager.
Utrjevanje platforme
V prizadevanju za zmanjšanje napadalne površine Androida Google uporablja Razkužila LLVM za prepoznavanje "hroščev zlorabe pomnilnika in potencialno nevarnega nedefiniranega vedenja." Google zdaj širi uporabo teh razkužila, ki temeljijo na prevajalniku, za več varnostno kritičnih komponent, vključno z BoundSan, IntSan, CFI in Shadow-Call Stack. Za odkrivanje težav s pomnilnikom v proizvodnji Google omogoča "označevanje kazalca kopice« za vse aplikacije, ki ciljajo na Android 11 ali novejši. Označevanje kazalca kopice je podprto v 64-bitnih napravah ARMv8 s podporo jedra za ARM Top-byte Ignore (TBI), funkcijo, v kateri " strojna oprema ignorira zgornji bajt kazalca pri dostopu do pomnilnika." Google opozarja razvijalce, da lahko te izboljšave utrditve "površinske bolj ponovljive/ponovljive zrušitve aplikacij," zato bi morali razvijalci temeljito preizkusiti svoje aplikacije na novem Android 11 Developer Predogled. Da bi našel in popravil številne napake v pomnilniku v sistemu, je Google uporabil orodje za odkrivanje napak v pomnilniku, imenovano strojno podprt AddressSanitizer (HWASan). Google ponuja predzgrajene sistemske slike, ki podpirajo HWASan na gradbenem strežniku AOSP če vas zanima iskanje in odpravljanje napak pomnilnika v vaših aplikacijah.
Google bo zagotovo objavil dodatne funkcije za zaščito zasebnosti uporabnikov in izboljšanje varnosti, zato bodite pozorni na našo pokritost s sistemom Android 11, da boste na tekočem.
Novice o Androidu 11 na XDA