Artikkel

Hva er Scoped Storage i Android 11?

protection click fraud

Når Android 10 var fortsatt i de tidlige beta-dagene, hadde Google planer om en stor endring i måten apper kunne få tilgang til filene og mappene i telefonens ekstern lagring (ting som bilder som du eller andre apper plasserte i / data / media-mappen, ikke SD-kortet som finnes i mange Android-enheter modeller).

Denne endringen ble kjent som Scoped lagring, og formålet var å drepe misbruk av READ_EXTERNAL_STORAGE-tillatelsene som så mange apper og utviklere liker å be om.

Disse endringene var opprinnelig planlagt å gjelde for alle apper på en telefon som kjører Android 10 eller nyere, men på grunn av utvikler tilbakeslag Google endret kurs og krevde bare bruk av Scoped Storage for apper som er målrettet mot Android API nivå 29, altså Android 10. Men med Android 11 Scoped Storage er tilbake, og Google vil sannsynligvis ikke ombestemme seg denne gangen.

Topp 10 funksjoner i Android 11 du trenger å vite om akkurat nå

Hvordan Scoped Storage fungerer

På en gang fungerte Android som alle andre stasjonære operativsystemer når det gjaldt tilgang til filene dine; ting som dokumenter, bilder, musikk eller noe annet du ønsket å lagre på enheten din, var der for enhver annen app å åpne. Du sa at det var OK for en app å gjøre dette når du installerte det, og det gjorde det bare. Ved å bruke appens opprinnelige brukergrensesnitt kan du bla gjennom filsystemet og se alle dine offentlige filer.

Verizon tilbyr Pixel 4a for bare $ 10 / mo på nye ubegrensede linjer

Med Android 4.4 KitKat begynte Google å gjøre endringer i og legge til begrensninger for hvordan en app kunne få tilgang til filer den ikke eide, og med Android 5.1 ble Storage Access Framework implementert. Dette ga apper en måte å få tilgang til filer i andre mapper ved hjelp av en Android API i stedet for å bruke standard programmeringsfiloperasjoner. Den... virker. Det er tregt og ganske upopulært, men det er tilgjengelig og nå nesten alle utviklere av en app som trenger denne typen global tilgang har i det minste prøvd den for å se hvor passende den er eller ikke er basert på deres behov.

Med Scoped Storage er ting både mer restriktive og enklere samtidig. En kompatibel app får sin egen mappe for brukervendte data. Apper har allerede en privat sandkassemappe for lagring av de nødvendige filene, og dette er ikke tilgjengelig for andre apper. Scoped Storage gir muligheten til å opprette en ny mappe for filer appen oppretter. Tenk på en app som en stemmeopptaker, for eksempel; den trenger et sted for å lagre lydfilene den oppretter.

Utviklere har blitt preparert til å bruke spesifikke metoder for filtilgang siden Lollipop, men de er veldig upopulære.

Appen trenger ingen tillatelse til å lese eller skrive en fil i denne mappen, så du blir ikke bedt om å gi tillatelser når du først kjører den angående filens lese- og skriveplasser; apper trenger også tillatelse for hver mappe de vil ha tilgang til, men ikke eier.

Utviklere som trenger tilgang til mapper som ikke eies av appen deres, må bruke Storage Access Framework API-er. Det betyr at det må spørre API for å se om filene eksisterer og få enhetsplasseringen, og be brukeren om tillatelse til å bruke den. Dette har vært den beste fremgangsmåten for filtilgang siden Android Lollipop, så det er ikke akkurat nytt. Men med Scoped Storage er den nå strengt håndhevet og ikke lenger "valgfri".

Hvorfor gjøre denne endringen?

Google gir to gyldige grunner til at den gjør denne endringen: Sikkerhet og å redusere restene av "app-rot".

Årsaken til en endring er god, men det betyr mer arbeid for utviklere.

På sikkerhetsfronten gjør denne endringen noen få ting. Først og fremst tillater det en utvikler å ha sin egen plass på lagringen av enheten din som er privat uten å be om noen spesifikke tillatelser når den først kjøres. Og ingen annen app har tilgang til noe dokument den oppretter uten du sier det kan.

For det andre, og like viktig, reduserer det misbruket av tillatelsen READ_EXTERNAL_STORAGE. Når du gir denne tillatelsen til en app i dag, gir den tilgang til hele den eksterne lagringsplassen der vi lagrer ting som bilder, private dokumenter, videoer og andre potensielt sensitive filer. Med Scoped Storage håndhevet, kan apper bare se sine egne datamapper pluss visse medietyper som musikkfiler ved hjelp av andre lagrings-API-er.

Nye API-er er utviklet sammen med et program for utviklere av filadministratorer for å få "spesiell tilgang."

Disse API-ene kan gi tilgang for visning, skriving, sletting og til og med bulkhandlinger ved bruk av en systembygd brukerprompt som lar deg tillate eller nekte handlingen. Disse API-ene bør forenkle utviklingen for apper som musikkspillere eller fotoredigerere, selv uten at Scoped Storage blir håndhevet.

Å redusere søppel i apper trenger liten forklaring. Når du avinstallerer en app, faller filene og mappene den over hele enhetens lagring en gang du ga det tillatelse til å gjøre det hold deg bak. Nok av disse restene kan begynne å påvirke ytelsen, spesielt hvis filene bruker et felles navn som kan gjentas av en annen app. Hvis en utvikler bygger en app som lager media som for eksempel en kameraapp eller musikkopptaker, kan han eller hun bruke standard mediemappeplasser for å sette inn ting du oppretter, slik at de ikke blir fjernet hvis appen er det avinstallert.

Hva med filbehandlere?

Utviklere av apper som filbehandlere som vil ha tilgang til hver filen i den eksterne lagringen kan gjøre det gjennom Storage Access Framework en gang gitt tillatelse fra Google - vi fikk vite i oktober 2019 på Android Developer Summit at et program som tillot "spesiell tilgang" ble implementert.

Legitimerte apper trenger disse spesielle tillatelsene.

En bruker vil gi tillatelse til at en filbehandling-app får tilgang til roten (toppnivåmappe) til den eksterne lagringen, og dermed gir rekursiv tilgang til hver mappe og fil inne i den. Siden dette er et ganske bredt utvalg og et av målene med Scoped Storage var å regjere i apper som ønsker dette tilgangsnivået, er det bra at Google tar en spesiell titt på apper som vil gjøre dette og gir tillatelser til legitime apper som favorittfilen din sjef.

Scoped Storage kommer til å skje denne gangen

Tidlig tilbakemelding for Scoped Storage var ikke veldig bra. Det var til og med en begjæring som ba Google om å fjerne funksjonen på nytt, om implementeringen.

Som det meste var hva Google gjorde. Scoped Storage var tilgjengelig i den offisielle Android 10-utgivelsen, men utviklere var ikke pålagt å bruke den. Men det handler om å endre seg. Fra Android-utvikler-nettsted.

For å gi utviklere ekstra tid til testing, kan apper som er målrettet mot Android 10 (API-nivå 29) fortsatt be om attributtet requestLegacyExternalStorage. Dette flagget tillater apper å midlertidig velge bort endringene knyttet til lagringsplass, for eksempel å gi tilgang til forskjellige kataloger og forskjellige typer mediefiler.

Enhver app som er målrettet mot Android 11 eller nyere, må bruke de nye API-ene for lagring, og som inkluderer Scoped Storage. Endringer i Google Plays utvikleravtale sier at fra og med 1. august 2020 alle nye apper sendt til Google Play målrette mot Android 10 eller nyere, og alle oppdateringer til eksisterende apper må være målrettet mot Android 10 eller nyere fra 1. november 2020. Forvent denne samme oppførselen, og neste år vil apper sannsynligvis være pålagt å målrette Android 11.

Det betyr at med mindre en apputvikler er villig til å la en app visne og dø i et hav av gamle apper, må Scoped Storage implementeres snart. Heldigvis har Google lyttet til tilbakemelding denne gangen og gjort ting enklere for apper som har behov for full eller spesiell tilgang, og de nye API-ene i Android 11 gjør det også lettere. En tryggere og sikrere Android er noe vi alle ønsker.

Har du lyttet til denne ukens Android Central Podcast?

Android Central

Hver uke gir Android Central Podcast deg de siste tekniske nyhetene, analysene og hot-takene, med kjente medvert og spesielle gjester.

  • Abonner i Pocket Cast: Lyd
  • Abonner i Spotify: Lyd
  • Abonner i iTunes: Lyd

Vi kan tjene en provisjon for kjøp ved hjelp av linkene våre. Lære mer.

Dette er de beste trådløse øreproppene du kan kjøpe til enhver pris!
Det er på tide å kutte ledningen!

Dette er de beste trådløse øreproppene du kan kjøpe til enhver pris!

De beste trådløse øreproppene er komfortable, høres bra ut, koster ikke for mye og passer lett i lommen.

Alt du trenger å vite om PS5: Utgivelsesdato, pris og mer
Neste generasjon

Alt du trenger å vite om PS5: Utgivelsesdato, pris og mer.

Sony har offisielt bekreftet at de jobber med PlayStation 5. Her er alt vi vet om det så langt.

Nokia lanserer to nye budsjett Android One-telefoner under $ 200
Nye Nokias

Nokia lanserer to nye budsjett Android One-telefoner under $ 200.

Nokia 2.4 og Nokia 3.4 er de siste tilskuddene til HMD Globals budsjett for smarttelefoner. Siden de begge er Android One-enheter, vil de garantert motta to store OS-oppdateringer og vanlige sikkerhetsoppdateringer i opptil tre år.

Dette er de beste bandene for Fitbit Sense og Versa 3
Ny og forbedret

Dette er de beste bandene for Fitbit Sense og Versa 3.

Sammen med utgivelsen av Fitbit Sense og Versa 3 introduserte selskapet også nye uendelige band. Vi har plukket ut de beste for å gjøre ting enklere for deg.

Jerry Hildenbrand

Jerry er Mobile Nation's bosatt nerd og stolt av det. Det er ingenting han ikke kan ta fra hverandre, men mange ting han ikke kan sette sammen igjen. Du finner ham over Mobile Nations-nettverket, og du kan slo ham på Twitter hvis du vil si hei.

instagram story viewer