Artikel

Hvad er Scoped Storage i Android 11?

protection click fraud

Hvornår Android 10 var stadig i sine tidlige beta-dage, havde Google planer om en stor ændring i den måde, hvorpå apps kunne få adgang til filerne og mapperne i din telefons ekstern lagring (ting som fotos, som du eller andre apps placerede i / data / media-mappen, ikke SD-kortet, der findes i mange Android modeller).

Denne ændring blev kendt som Omfanget opbevaring, og formålet var at dræbe misbrug af de READ_EXTERNAL_STORAGE tilladelser, som så mange apps og udviklere kan lide at anmode om.

Disse ændringer blev oprindeligt bestemt til at gælde for hver app på en telefon, der kører Android 10 eller nyere, men på grund af udvikler tilbageslag Google ændrede kurs og krævede kun brugen af ​​Scoped Storage til apps, der er målrettet mod Android API niveau 29, hvilket er Android 10. Men med Android 11 Scoped Storage er tilbage, og Google vil sandsynligvis ikke skifte mening denne gang.

Top 10 funktioner i Android 11, du har brug for at vide om lige nu

Sådan fungerer Scoped Storage

På et tidspunkt fungerede Android som ethvert andet desktop-operativsystem, når det gjaldt adgang til dine filer; ting som dokumenter, fotos, musik eller andet, du ville gemme på din enhed, var der for enhver anden app at åbne. Du sagde, at det var OK for en app at gøre dette, da du installerede det, og det gjorde det bare. Ved hjælp af appens oprindelige brugergrænseflade kan du gennemse filsystemet og se alle dine offentlige filer.

Verizon tilbyder Pixel 4a for kun $ 10 / mo på nye ubegrænsede linjer

Med Android 4.4 KitKat begyndte Google at foretage ændringer og tilføje begrænsninger for, hvordan en app kunne få adgang til filer, som den ikke ejer, og med Android 5.1 blev Storage Access Framework implementeret. Dette gav apps en måde at få adgang til filer i andre mapper ved hjælp af en Android API i stedet for at bruge standardprogrammeringsfilhandlinger. Det... arbejder. Det er langsomt og temmelig upopulært, men det er tilgængeligt og nu næsten alle udviklere af en app, der har brug for denne form for global adgang har i det mindste prøvet det for at se, hvor egnet det er eller ikke er baseret på deres behov.

Med Scoped Storage er tingene både mere restriktive og lettere på samme tid. En kompatibel app får sin egen mappe til brugervenlige data. Apps har allerede en privat sandbox-mappe til lagring af deres krævede filer, og dette er ikke tilgængeligt for nogen anden app. Scoped Storage giver mulighed for at oprette en anden mappe til filer, som appen opretter. Tænk f.eks. På en app som en stemmeoptager; det har brug for et sted for at gemme de lydfiler, det opretter.

Udviklere er blevet prepareret til at bruge specifikke metoder til filadgang siden Lollipop, men de er meget upopulære.

Appen har ikke brug for tilladelse til at læse eller skrive nogen fil i denne mappe, så du bliver ikke bedt om at give tilladelser, når du første gang kører den vedrørende fillæsnings- og skriveplaceringer; apps har også brug for tilladelse til hver mappe, de vil have adgang til, men ikke ejer.

Udviklere, der har brug for at få adgang til mapper, der ikke ejes af deres app, skal bruge Storage Access Framework API'er. Det betyder, at det er nødvendigt at forespørge API'et for at se, om filerne findes og få dens enhedsplacering, så spørg brugeren om tilladelse til at bruge den. Dette har været den anbefalede bedste praksis for filadgang siden Android Lollipop, så det er ikke ligefrem nyt. Men med Scoped Storage er det nu strengt håndhævet og ikke længere "valgfrit".

Hvorfor foretage denne ændring?

Google giver to gyldige grunde til, at den foretager denne ændring: Sikkerhed og at reducere resterende "app rod".

Årsagen til en ændring er god, men det betyder mere arbejde for udviklere.

På sikkerhedsfronten gør denne ændring et par ting. Først og fremmest giver det en udvikler mulighed for at have deres egen plads på lageret på din enhed, der er privat uden at bede om nogen specifikke tilladelser, når den først køres. Og ingen anden app kan få adgang til ethvert dokument, den opretter uden du siger det kan.

For det andet og lige så vigtigt reducerer det misbrug af tilladelsen READ_EXTERNAL_STORAGE. Når du giver denne tilladelse til en app i dag, giver den adgang til hele det eksterne lager, hvor vi gemmer ting som fotos, private dokumenter, videoer og andre potentielt følsomme filer. Når Scoped Storage er håndhævet, kan apps kun se deres egne datamapper plus visse medietyper som musikfiler ved hjælp af andre lager-API'er.

Nye API'er er udviklet sammen med et program til udviklere af filadministratorer for at få "særlig adgang."

Disse API'er kan give adgang til visning, skrivning, sletning og endda bulkhandlinger ved hjælp af en systembygget brugerprompt, der lader dig tillade eller nægte handlingen. Disse API'er skal forenkle udviklingen af ​​apps som musikafspillere eller fotoredigerere, selv uden at Scoped Storage bliver håndhævet.

At reducere app-rod kræver lidt forklaring. Når du afinstallerer en app, falder filerne og mapperne over hele enhedens lager når du gav det tilladelse til det blive bagved. Nok af disse rester kan begynde at påvirke ydeevnen, især hvis filerne bruger et fælles navn, der muligvis gentages af en anden app. Hvis en udvikler bygger en app, der f.eks. Opretter medier som f.eks. En kameraapp eller musikoptager, kan han eller hun bruge standardmediemappens placeringer for at deponere de ting, du opretter, så de ikke fjernes, hvis appen er afinstalleret.

Hvad med filadministratorer?

Udviklere af apps som filadministratorer, der ønsker adgang til hver fil i den eksterne lagring kan gøre det via Storage Access Framework, når Google først har givet tilladelse - det lærte vi i oktober 2019 på Android Developer Summit at et program, der muliggør "særlig adgang" blev implementeret.

Legitmitate-apps har brug for disse specielle tilladelser.

En bruger giver tilladelse til en filhåndteringsapp til at få adgang til roden (øverste niveau-mappe) på det eksterne lager og giver således rekursiv adgang til hver mappe og fil inde i den. Da dette er et ret bredt udvalg, og et af målene med Scoped Storage var at regere i apps, der ønsker dette niveau af adgang, er det godt, at Google ser specielt på apps, der ønsker at gøre dette og giver tilladelser til legitime apps som din yndlingsfil Manager.

Scoped Storage vil ske denne gang

Tidlig feedback til Scoped Storage var ikke særlig god. Der var endda et andragende der bad Google om at fjerne funktionen genoverveje dens implementering.

Hvilket mest er hvad Google gjorde. Scoped Storage var tilgængelig i den officielle Android 10-udgivelse, men udviklere var ikke forpligtet til at bruge den. Men det handler om at ændre sig. Fra Android-udviklerwebsted.

For at give udviklere ekstra tid til test kan apps, der er målrettet mod Android 10 (API-niveau 29) stadig anmode om attributten requestLegacyExternalStorage. Dette flag giver apps mulighed for midlertidigt at fravælge de ændringer, der er forbundet med scoped-lagring, såsom at give adgang til forskellige mapper og forskellige typer mediefiler.

Enhver app, der er målrettet mod Android 11 eller nyere, skal bruge de nye lager-API'er, og som inkluderer Scoped Storage. Ændringer i Google Play's udvikleraftale siger, at alle nye apps, der sendes til Google Play, starter den 1. august 2020 skal målrette mod Android 10 eller nyere, og alle opdateringer til eksisterende apps skal målrette mod Android 10 eller nyere fra 1. november 2020. Forvent den samme adfærd, og næste år vil apps sandsynligvis være forpligtet til at målrette mod Android 11.

Det betyder, at medmindre en appudvikler er villig til at lade en app visne og dø i et hav af gamle apps, skal Scoped Storage implementeres snart. Heldigvis har Google lyttet til feedback denne gang og gjort tingene lettere for apps, der har behov for fuld eller særlig adgang, og de nye API'er i Android 11 gør også andre ting lettere. En sikrere og mere sikker Android er noget, vi alle gerne vil have.

Har du lyttet til denne uges Android Central Podcast?

Android Central

Hver uge bringer Android Central Podcast dig de seneste tekniske nyheder, analyser og hot take med kendte co-værter og specielle gæster.

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

Vi tjener muligvis en provision for køb ved hjælp af vores links. Lær mere.

Dette er de bedste trådløse ørepropper, du kan købe til enhver pris!
Det er tid til at klippe ledningen!

Dette er de bedste trådløse ørepropper, du kan købe til enhver pris!

De bedste trådløse øretelefoner er komfortable, lyder godt, koster ikke for meget og passer let i lommen.

Alt hvad du behøver at vide om PS5: Udgivelsesdato, pris og mere
Næste generation

Alt hvad du behøver at vide om PS5: Udgivelsesdato, pris og mere.

Sony har officielt bekræftet, at de arbejder på PlayStation 5. Her er alt, hvad vi ved om det hidtil.

Nokia lancerer to nye budget Android One-telefoner under $ 200
Nye Nokias

Nokia lancerer to nye budget Android One-telefoner under $ 200.

Nokia 2.4 og Nokia 3.4 er de seneste tilføjelser til HMD Globals budget-smartphone-sortiment. Da de begge er Android One-enheder, modtager de garanteret to store OS-opdateringer og regelmæssige sikkerhedsopdateringer i op til tre år.

Dette er de bedste bands til Fitbit Sense og Versa 3
Nyt og forbedret

Dette er de bedste bands til Fitbit Sense og Versa 3.

Sammen med frigivelsen af ​​Fitbit Sense og Versa 3 introducerede virksomheden også nye uendelige bands. Vi har valgt de bedste for at gøre tingene lettere for dig.

Jerry Hildenbrand

Jerry er Mobile Nation's bosiddende nørd og stolt af det. Der er ikke noget, han ikke kan tage fra hinanden, men mange ting, som han ikke kan samle igen. Du finder ham på tværs af Mobile Nations-netværket, og du kan slå ham op på Twitter hvis du vil sige hej.

instagram story viewer