Член

Какво е Scoped Storage в Android 11?

Кога Android 10 все още беше в ранните си бета дни, Google имаше планове за голяма промяна в начина, по който приложенията могат да имат достъп до файловете и папките в телефона на вашия външно хранилище (неща като снимки, които вие или други приложения поставяте в папката / data / media, а не SD картата, присъстваща в много Android модели).

Тази промяна беше известна като Съхранение в обхвати целта му беше да убие злоупотребата с разрешенията READ_EXTERNAL_STORAGE, които толкова много приложения и разработчици искат да поискат.

Първоначално тези промени трябваше да се прилагат за всяко приложение на телефон с Android 10 или по-нова версия, но поради разработчика реакция Google промени курса и изисква само използването на Scoped Storage за приложения, които са насочени към Android API ниво 29, което е Android 10. Но със Android 11 Scoped Storage се завръща и този път Google вероятно няма да промени решението си.

Топ 10 функции в Android 11, за които трябва да знаете точно сега

Как работи Scoped Storage

По едно време Android работеше като всяка друга настолна операционна система, когато ставаше въпрос за достъп до вашите файлове; неща като документи, снимки, музика или каквото и да било друго, което сте искали да съхранявате на вашето устройство, са били там за отваряне на всяко друго приложение. Казахте, че е добре приложението да прави това, когато го инсталирате, и то току що го направи. Използвайки родния потребителски интерфейс на приложението, можете да разглеждате файловата система и да видите всичките си публични файлове.

Verizon предлага Pixel 4a само за $ 10 / месец на нови неограничени линии

С Android 4.4 KitKat Google започна да прави промени и да добавя ограничения за това как дадено приложение може да има достъп до файлове, които не притежава, а с Android 5.1 беше внедрена Framework Access Framework. Това даде на приложенията начин за достъп до файлове в други папки с помощта на Android API, вместо да използват стандартни операции с файлови програми. То... върши работа. Той е бавен и доста непопулярен, но е достъпен и до момента почти всеки разработчик на приложение, което се нуждае този вид глобален достъп поне го е изпробвал, за да види колко подходящ е или не се основава на техния нужди.

С Scoped Storage нещата са едновременно по-ограничаващи и по-лесни. На съвместимо приложение се предоставя собствена папка за данни, насочени към потребителя. Приложенията вече имат частна изолирана папка за съхранение на необходимите им файлове и това не е достъпно за друго приложение. Scoped Storage дава възможност за създаване на втора папка за файлове, създадени от приложението. Помислете за приложение като диктофон например; трябва някъде да съхранява създадените от него аудио файлове.

Разработчиците са подготвени да използват специфични методи за достъп до файлове от Lollipop, но те са много непопулярни.

Приложението не се нуждае от разрешение за четене или писане на който и да е файл в тази папка, така че няма да бъдете подканени да предоставите каквито и да било разрешения, когато го стартирате за първи път относно местата за четене и запис на файлове; приложенията също се нуждаят от разрешение за всяка папка, до която искат да имат достъп, но не притежават.

Разработчиците, които се нуждаят от достъп до папки, които не са собственост на приложението им, ще трябва да използват API на Framework за достъп до хранилището. Това означава, че трябва да поиска API, за да види дали файловете съществуват и да получи местоположението на устройството, след което да поиска разрешение от потребителя да го използва. Това е препоръчителната най-добра практика за достъп до файлове от Android Lollipop, така че не е съвсем ново. Но с обхванатото съхранение вече се прилага стриктно и вече не е "по избор".

Защо да направите тази промяна?

Google дава две основателни причини, поради които прави тази промяна: Сигурност и намаляване на остатъците от „бъркотия в приложенията“.

Причината за промяна е добра, но това означава повече работа за разработчиците.

Що се отнася до сигурността, тази промяна прави няколко неща. Първо и най-важното, позволява на разработчика да разполага със собствено пространство в хранилището на вашето устройство, което е частно, без да иска някакви конкретни разрешения при първото стартиране. И нито едно друго приложение няма достъп до който и да е документ, без който създава Вие казвайки, че може.

Второ и също толкова важно, той намалява злоупотребата с разрешението READ_EXTERNAL_STORAGE. Когато днес дадете това разрешение за приложение, то дава достъп до цялото външно хранилище, където запазваме неща като снимки, частни документи, видеоклипове и други потенциално чувствителни файлове. С налагането на Scoped Storage приложенията могат да виждат само собствените си папки с данни плюс определени типове медии, като музикални файлове, използвайки други API за съхранение.

Разработени са нови API, заедно с програма за разработчици на файлови мениджъри, за да получат „специален достъп“.

Тези API могат да предоставят достъп за преглед, запис, изтриване и дори групови действия чрез използването на вграден в системата потребителски ред, който ви позволява да разрешите или откажете действието. Тези API трябва да опростят разработката за приложения като музикални плейъри или фоторедактори, дори без да се налага налагане на Scoped Storage.

Намаляването на бъркотията в приложенията се нуждае от малко обяснения. Когато деинсталирате приложение, файловете и папките, които той изпуска в цялото хранилище на вашето устройство след като сте му дали разрешение да го направи останете назад. Достатъчно от тези остатъци може да започне да влияе на производителността, особено ако файловете използват общо име, което може да се повтори от друго приложение. Ако разработчикът създаде приложение, което създава мултимедия като приложение за камера или музикален рекордер, например, той или тя може да използва стандартните местоположения на медийни папки за депозиране на нещата, които създавате, за да не бъдат премахнати, ако приложението е деинсталиран.

Ами файловите мениджъри?

Разработчици на приложения като файлови мениджъри, които искат достъп всеки файл във външното хранилище може да го направи чрез Storage Access Framework, след като получи разрешение от Google - научихме през октомври 2019 г. в Среща на върха за разработчици на Android че се прилага програма, позволяваща „специален достъп“.

Легитимираните приложения се нуждаят от тези специални разрешения.

Потребителят ще даде разрешение на приложението за файлов мениджър да има достъп до корен (папка от най-високо ниво) на външното хранилище, като по този начин предоставя рекурсивен достъп до всяка папка и файл в него. Тъй като това е доста широк избор и една от целите на Scoped Storage беше да царува в приложения, които искат това ниво на достъп, добре, че Google ще разгледа специално приложенията, които искат да направят това, и ще даде разрешения за легитимни приложения като любимия ви файл управител.

Този път ще се случи съхранение в обхват

Ранната обратна връзка за Scoped Storage не беше много добра. Имаше дори петиция, който помоли Google да премахне функцията, да преосмисли изпълнението си.

Което най-вече направи Google. Scoped Storage се предлагаше в официалната версия на Android 10, но от разработчиците не се изискваше да го използват. Но това е на път да се промени. От Сайт за разработчици на Android.

За да дадат на разработчиците допълнително време за тестване, приложенията, насочени към Android 10 (API ниво 29), все още могат да поискат атрибута requestLegacyExternalStorage. Този флаг позволява на приложенията временно да се откажат от промените, свързани с обхвата на съхранение, като предоставяне на достъп до различни директории и различни видове медийни файлове.

Всяко приложение, което е насочено към Android 11 или по-нова версия, трябва да използва новите API за съхранение и включва Scoped Storage. Промените в споразумението за разработчици на Google Play казват, че от 1 август 2020 г. всички нови приложения, подадени в Google Play трябва да насочете към Android 10 или по-нова версия и всички актуализации на съществуващите приложения трябва да са насочени към Android 10 или по-нова версия от 1 ноември 2020 г. Очаквайте същото поведение и приложенията през следващата година вероятно ще са необходими за насочване към Android 11.

Това означава, че освен ако разработчикът на приложения не е готов да остави приложението да изсъхне и да умре в море от стари приложения, Scoped Storage трябва да бъде внедрено скоро. За щастие този път Google изслуша отзивите и улесни нещата за приложения, които имат нужда от пълен или специален достъп, а новите API в Android 11 улесняват и други неща. По-безопасен и по-сигурен Android е нещо, което всички трябва да искаме.

Слушали ли сте Android Central Podcast тази седмица?

Android Central

Всяка седмица Android Central Podcast ви предоставя най-новите технологични новини, анализи и актуални снимки, с познати съ-домакини и специални гости.

  • Абонирайте се за Pocket Casts: Аудио
  • Абонирайте се в Spotify: Аудио
  • Абонирайте се в iTunes: Аудио

Можем да спечелим комисионна за покупки, използвайки нашите връзки. Научете повече.

Това са най-добрите безжични слушалки, които можете да закупите на всяка цена!
Време е да прережете кабела!

Това са най-добрите безжични слушалки, които можете да закупите на всяка цена!

Най-добрите безжични слушалки са удобни, звучат страхотно, не струват прекалено много и лесно се побират в джоба.

Всичко, което трябва да знаете за PS5: Дата на издаване, цена и много други
Следващото поколение

Всичко, което трябва да знаете за PS5: Дата на издаване, цена и много други.

Sony официално потвърди, че работи по PlayStation 5. Ето всичко, което знаем за него до момента.

Nokia пуска два нови бюджетни телефона Android One под $ 200
Нови Нокии

Nokia пуска два нови бюджетни телефона Android One под $ 200.

Nokia 2.4 и Nokia 3.4 са най-новите допълнения към бюджетната гама смартфони на HMD Global. Тъй като и двете са устройства с Android One, гарантирано ще получат две основни актуализации на ОС и редовни актуализации на защитата до три години.

Това са най-добрите ленти за Fitbit Sense и Versa 3
Ново и подобрено

Това са най-добрите ленти за Fitbit Sense и Versa 3.

Заедно с пускането на Fitbit Sense и Versa 3, компанията представи и нови безкрайни ленти. Избрахме най-добрите, за да улесним нещата за вас.

Джери Хилденбранд

Джери е обитател на Mobile Nation и се гордее с това. Няма нищо, което той да не може да разглоби, но много неща не може да събере отново. Ще го намерите в мрежата на Mobile Nations и можете го удари в Twitter ако искате да кажете хей.

instagram story viewer