Článek

Co je to Scoped Storage v Androidu 11?

Když Android 10 byl ještě v raných beta dnech, Google měl plány na velkou změnu ve způsobu, jakým by aplikace mohly přistupovat k souborům a složkám v telefonu externí úložiště (například fotografie, které vy nebo jiné aplikace umístíte do složky / data / media, nikoli karta SD přítomná v mnoha zařízeních Android modely).

Tato změna byla známá jako Rozsahované úložištěa jeho účelem bylo zabít zneužití oprávnění READ_EXTERNAL_STORAGE, které tolik aplikací a vývojářů ráda požaduje.

Tyto změny měly původně platit pro všechny aplikace v telefonu se systémem Android 10 nebo novějším, ale kvůli vývojáři backlash Google changed course and only required the use of Scoped Storage for apps that target Android API level 29, which is Android 10. Ale s Android 11 Scoped Storage je zpět a Google pravděpodobně tentokrát nerozmyslí.

Top 10 funkcí v Androidu 11, o kterých právě teď potřebujete vědět

Jak funguje Scoped Storage

Android v době přístupu k vašim souborům fungoval jako každý jiný operační systém pro stolní počítače; věci, jako jsou dokumenty, fotografie, hudba nebo cokoli jiného, ​​co jste chtěli uložit do svého zařízení, bylo možné otevřít v jakékoli jiné aplikaci. Když jste ji nainstalovali, řekli jste, že je to v pořádku, a aplikace to udělala. Pomocí nativního uživatelského rozhraní aplikace můžete procházet souborový systém a zobrazit všechny své veřejné soubory.

Verizon nabízí Pixel 4a za pouhých 10 $ / měsíc na nových linkách Unlimited

S Androidem 4.4 KitKat začal Google provádět změny a přidávat omezení, jak by aplikace mohla přistupovat k souborům, které nevlastnila, a se systémem Android 5.1 byl implementován rámec pro přístup k úložišti. To poskytlo aplikacím způsob přístupu k souborům v jiných složkách pomocí rozhraní Android API namísto použití standardních operací programovacích souborů. To... funguje. Je to pomalé a docela nepopulární, ale je k dispozici a téměř každý vývojář aplikace, která potřebuje tento druh globálního přístupu to alespoň vyzkoušel, aby zjistil, jak vhodný je nebo není založen na jejich potřeby.

S Scoped Storage jsou věci přísnější a zároveň jednodušší. Kompatibilní aplikaci je přidělena vlastní složka pro data orientovaná na uživatele. Aplikace již mají soukromou izolovanou složku pro ukládání požadovaných souborů a tato aplikace není k dispozici pro žádnou jinou aplikaci. Scoped Storage umožňuje vytvářet druhou složku pro soubory, které aplikace vytváří. Představte si například aplikaci jako diktafon; potřebuje někde uložit zvukové soubory, které vytváří.

Vývojáři byli od Lollipop připraveni používat konkrétní metody pro přístup k souborům, ale jsou velmi nepopulární.

Aplikace nepotřebuje žádné oprávnění ke čtení nebo zápisu libovolného souboru v této složce, takže při prvním spuštění týkajícím se umístění pro čtení a zápis souboru nebudete vyzváni k udělení jakýchkoli oprávnění; aplikace také potřebují povolení pro každou složku, ke které chtějí přistupovat, ale nevlastní ji.

Vývojáři, kteří potřebují získat přístup ke složkám, které nevlastní jejich aplikace, budou muset použít Storage Access Framework API. To znamená, že potřebuje dotazovat API, aby zjistil, zda soubory existují, a zjistit jeho umístění zařízení, a poté požádat uživatele o povolení k jeho použití. Toto je doporučený nejlepší postup pro přístup k souborům od verze Android Lollipop, takže to není úplně nové. Ale u Scoped Storage je nyní přísně vynucováno a již není „volitelné“.

Proč provést tuto změnu?

Google uvádí dva platné důvody, proč tuto změnu provádí: Zabezpečení a snížení zbytečného „nepořádku v aplikacích“.

Důvod pro změnu je dobrý, ale znamená to více práce pro vývojáře.

V oblasti zabezpečení tato změna dělá několik věcí. Za prvé a především umožňuje vývojářům mít svůj vlastní prostor v úložišti vašeho zařízení, který je soukromý, aniž by při prvním spuštění požadoval nějaká konkrétní oprávnění. A žádná jiná aplikace nemá přístup k jakémukoli dokumentu, který vytvoří vy říkat, že může.

Za druhé, a stejně důležité, omezuje zneužívání oprávnění READ_EXTERNAL_STORAGE. Když dnes udělíte toto oprávnění pro aplikaci, udělí to přístup k celému externímu úložišti, kde ukládáme věci, jako jsou fotografie, soukromé dokumenty, videa a další potenciálně citlivé soubory. Díky vynucenému Scoped Storage mohou aplikace pomocí jiných rozhraní API úložiště vidět pouze své vlastní datové složky a určité typy médií, jako jsou hudební soubory.

Spolu s programem pro vývojáře správců souborů byla vyvinuta nová rozhraní API, aby získali „speciální přístup“.

Tato rozhraní API mohou udělit přístup k prohlížení, psaní, mazání a dokonce i hromadným akcím pomocí systémové výzvy uživatele, která vám umožní akci povolit nebo zakázat. Tato rozhraní API by měla zjednodušit vývoj aplikací, jako jsou hudební přehrávače nebo editory fotografií, a to i bez vymáhání Scoped Storage.

Omezení nepořádku v aplikacích vyžaduje malé vysvětlení. Když odinstalujete aplikaci, soubory a složky, které tato aplikace vypustí, v celém úložišti zařízení jakmile jste mu k tomu dali svolení Zůstaň vzadu. Dostatek těchto zbytků může začít ovlivňovat výkon, zvláště pokud soubory používají běžný název, který může opakovat jiná aplikace. Pokud vývojář vytvoří aplikaci, která vytváří média, jako je například aplikace pro fotoaparát nebo hudební rekordér, může použít standardní umístění složek médií pro uložení věcí, které vytvoříte, aby nebyly odstraněny, pokud je aplikace odinstalován.

A co správci souborů?

Vývojáři aplikací, jako jsou správci souborů, ke kterým chtějí mít přístup každý soubor v externím úložišti tak může učinit prostřednictvím Storage Access Framework po udělení povolení společností Google - zjistili jsme to v říjnu 2019 na Android Developer Summit že byl implementován program umožňující „speciální přístup“.

Legitmitované aplikace potřebují tato speciální oprávnění.

Uživatel by dal aplikaci pro správu souborů přístup k kořenovému adresáři (složce nejvyšší úrovně) externího úložiště, čímž by umožnil rekurzivní přístup ke všem složkám a souborům v něm. Jelikož se jedná o docela široký výběr a jedním z cílů Scoped Storage bylo vládnout aplikacím, které chtějí tuto úroveň přístupu, je je dobré, že Google se speciálně podívá na aplikace, které to chtějí udělat, a udělí oprávnění legitimním aplikacím, jako je váš oblíbený soubor manažer.

Scoped Storage se tentokrát stane

Včasná zpětná vazba pro Scoped Storage nebyla příliš dobrá. Bylo dokonce petice který požádal Google, aby tuto funkci odstranil, přehodnotit jeho implementaci.

Což je většinou to, co Google udělal. Scoped Storage byl k dispozici v oficiálním vydání systému Android 10, ale vývojáři nemuseli toto používat. Ale to se všechno změní. Z Web pro vývojáře Android.

Aby měli vývojáři více času na testování, aplikace, které cílí na Android 10 (úroveň API 29), mohou stále požadovat atribut requestLegacyExternalStorage. Tento příznak umožňuje aplikacím dočasně se odhlásit ze změn souvisejících s rozsahem úložiště, jako je například udělení přístupu k různým adresářům a různým typům mediálních souborů.

Jakákoli aplikace, která je cílená na Android 11 nebo novější, musí používat nová rozhraní API úložiště a ta zahrnuje Scoped Storage. Změny ve smlouvě vývojářů Google Play říkají, že od 1. srpna 2020 budou všechny nové aplikace odeslány na Google Play musí cílit na Android 10 nebo novější a všechny aktualizace stávajících aplikací musí cílit na Android 10 nebo novější od 1. listopadu 2020. Očekávejte stejné chování a aplikace pro příští rok budou pravděpodobně nutné k cílení na Android 11.

To znamená, že pokud vývojář aplikace není ochoten nechat aplikaci uschnout a zemřít v moři starých aplikací, musí být brzy implementováno Scoped Storage. Naštěstí Google tentokrát poslouchal zpětnou vazbu a usnadnil to aplikacím, které potřebují plný nebo speciální přístup, a nová rozhraní API v systému Android 11 usnadňují i ​​další věci. Bezpečnější a bezpečnější Android je něco, co bychom všichni měli chtít.

Poslouchali jste tento týden Android Central Podcast?

Android Central

Každý týden vám Android Central Podcast přináší nejnovější technologické novinky, analýzy a zajímavé záběry se známými hostiteli a speciálními hosty.

  • Přihlaste se k odběru v kapesních obsazeních: Zvuk
  • Přihlaste se k odběru ve Spotify: Zvuk
  • Přihlásit se k odběru v iTunes: Zvuk

Můžeme získat provizi za nákupy pomocí našich odkazů. Zjistit více.

Jedná se o nejlepší bezdrátová sluchátka, která si můžete koupit za každou cenu!
Je čas přestřihnout šňůru!

Jedná se o nejlepší bezdrátová sluchátka, která si můžete koupit za každou cenu!

Nejlepší bezdrátová sluchátka jsou pohodlná, skvěle zní, nestojí příliš mnoho a snadno se vejdou do kapsy.

Vše, co potřebujete o PS5 vědět: Datum vydání, cena a další
Další generace

Vše, co potřebujete o PS5 vědět: Datum vydání, cena a další.

Společnost Sony oficiálně potvrdila, že pracuje na PlayStation 5. Tady je vše, co o tom zatím víme.

Nokia uvádí na trh dva nové levné telefony Android One s cenou do 200 $
Nové Nokie

Nokia uvádí na trh dva nové levné telefony Android One s cenou do 200 $.

Nokia 2.4 a Nokia 3.4 jsou nejnovější přírůstky do řady levných smartphonů HMD Global. Jelikož jsou obě zařízení Android One, je zaručeno, že budou dostávat dvě hlavní aktualizace operačního systému a pravidelné aktualizace zabezpečení až na tři roky.

Toto jsou nejlepší kapely pro Fitbit Sense a Versa 3
Nový a vylepšený

Toto jsou nejlepší kapely pro Fitbit Sense a Versa 3.

Spolu s vydáním Fitbit Sense a Versa 3 společnost představila také nová nekonečná pásma. Vybrali jsme ty nejlepší, abychom vám usnadnili práci.

Jerry Hildenbrand

Jerry je rezidentem Mobile Nation a je na to hrdý. Neexistuje nic, co by nemohl rozebrat, ale mnoho věcí, které nemůže znovu sestavit. Najdete ho v síti Mobile Nations a můžete zasáhnout ho na Twitteru pokud chcete říct hej.

instagram story viewer