Новая функция Android 11 стала головной болью для разработчиков

Android 11 — достаточно крупное обновление. Google планирует показать его уже в мае этого года, а само обновление начнет распространяться уже в сентябре. Главными нововведениями станут улучшенная темная тема, упрощенная передача файлов по аналогии с AirDrop, а также новый способ организации памяти приложений ScopedStorage. Но давайте ближе к делу. Voice Aloud Reader имеет более 5 миллионов скачиваний в Google Play, однако будущее приложения теперь под вопросом из-за Scoped Storage. В чём проблема? Давайте разбираться.

Новая функция Android 11 стала головной болью для разработчиков. Scoped Storage? Боль или не боль? Фото.

Scoped Storage? Боль или не боль?

В описании к очередному обновлению он заявил, что в случае, если очередная попытка внедрить Scoped Storage не увенчается успехом, он попросту удалит приложение из Google Play и оставит разработку под Android. Это серьезное заявление, и с чем именно связаны проблемы по интеграции приложения, пока остается загадкой. Voice Aloud Reader — это программа, способная читать текст вслух, достаточно полезная кстати. И его исчезновение с Google Play может стать эдаким звоночком для Google. Что же стало причиной: недостаточно профессиональный разработчик или плохое API для работы со Scoped Storage?

Новая функция Android 11 стала головной болью для разработчиков. Обновление приложения @Voice Aloud Reader. Фото.

Обновление приложения @Voice Aloud Reader

Что же такое Scoped Storage?

Изначально Scoped Storage должна была появиться в Android Q, однако, вероятно, разработчики не успели адаптировать свои приложения, поэтому Google решила перенести выход на год. Scoped Storage — это изолированные куски памяти, выделяемые каждому приложению, впрочем, это даже можно понять по названию. В настоящее время в Android приложения работают с памятью по аналогии с Windows — они получают доступ ко всей файловой системе. Scoped Storage позволит изолировать определенные ячейки памяти под конкретные приложения.

Подобный принцип работы наблюдается в iOS. И примерно также работают вкладки Chrome, правда в этом случае они изолируются на процессы. Такая изоляция позволит улучшить безопасность системы, и приложения не смогут получать доступ к важным данным на смартфоне. Для взаимодействия с файловой системой Google предлагает использовать API Storage Access Framework. И разработчикам оно не очень нравится за счет медленной работы и плохой документации. По скриншоту ниже видно, насколько медленно работает новое API. В среднем SAF в 25-50 раз дольше работает с файлами.

Что же такое Scoped Storage? Scoped Storage. Фото.

Scoped Storage

Но проблема не только в этом. В Scoped Storage разработчикам приложений необходимо при работе с каким-либо файлом сначала копировать его в собственную изолированную (scoped) область памяти, и уже затем производить с ней манипуляции. Представьте какой-нибудь редактор видео. Вы открываете видеоролик размером в 5 гигабайт, и приложению нужно будет сделать его копию в своей области памяти, чтобы иметь возможность изменять его. К тому же судьба тысячи файловых менеджеров в Google Play теперь под вопросом. Как они будут работать со всей памятью телефона, если будут иметь ограниченный доступ к ней? Это пока загадка.

Почему Scoped Storage не такой плохой

С приходом Scoped Storage несомненно система станет более защищенной. Одни приложения не смогут получить доступ к данным других приложений. Теперь приложению для доступа к данным вне собственного Scoped Storage нужно будет получить подтверждение от пользователя. Это несомненно удобно. К тому же разработчики Android обещали к выходу Android 11 исправить проблемы с производительностью. А относительно необходимости копировать файлы в собственный Scoped Storage я задал вопрос одному из разработчиков Android-приложений, который ответил, что это удобно, а для работы с большими файлами лучше использовать InputStream.

К тому же некоторые разработчики уже давно работают с SAF и не испытывают каких-либо проблем. Возможно, проблемы возникнут лишь у разработчиков файловых менеджеров, где необходим доступ ко всем файлам системы.

Читайте также: Представлены 117 новых emoji: матрешка и трансгендеры

Я пошёл еще дальше, и изучил подкаст разработчиков Android (с 24:42 минуты), которые объяснили, зачем нужен Scoped Storage.

Попытаюсь вкратце пересказать о чём шла речь в подкасте. В Scoped Storage каждое приложение имеет отдельную папку, к которой можно получить доступ без всяких разрешений. Без Scoped Storage приложение с доступом к файловой системе может просмотреть личные данные пользователя, и это плохо. Как уже мы писали выше, разработчики отметили, что одни приложения не могут видеть файлы других приложений и имеют доступ лишь к тем файлам системы, к которым дал доступ сам пользователь с помощью диалогового окна. Таким образом, Scoped Storage — это, вероятно, самое крупное обновление за последнее время, которое случалось с Android. Но при этом разработчикам теперь нужно будет дольше возиться с разработкой, что не нравится, конечно же, кодерам, но для пользователей это, конечно, плюс.

А что думаете вы? Делитесь мнением в комментариях и не забывайте про наш чат Телеграм.

Теги
Лонгриды для вас
Чем Samsung до сих пор лучше китайских смартфонов

На протяжении последних лет смартфоны Samsung принято критиковать буквально за все. И за отсутствие изменений от поколения к поколению, и за маленькие аккумуляторы, и за медленные зарядки, которые к тому же приходится покупать отдельно. Но вместе с тем во многих аспектах Samsung лучше китайских смартфонов. И это не слова фаната K-pop, а мнение последовательного критика корейской компании.

Читать далее
Что известно про One UI 9: какие функции появятся в обновлении для Samsung, и когда оно выйдет

Совсем недавно Samsung начала распространять One UI 8 на смартфоны Galaxy, а пользователям уже интересно, каким будет следующее обновление. К счастью, слухи о One UI 9 уже есть. Их не так много, но уже можно составить примерную картину будущего апдейта. Так, информация о новой операционке появилась еще в конце лета и постепенно утекала на протяжении последних месяцев. Ниже мы собрали все, что известно о One UI 9 на данный момент.

Читать далее
Xiaomi запретит установку HyperOS 3 на некоторые совместимые смартфоны. Как этого избежать

Xiaomi готовит масштабное обновление своей фирменной ОС. Прошивка под названием HyperOS 3 выйдет со дня на день. Однако обладатели некоторых устройств ее не получат: если на смартфоне установлена модифицированная ОС, устройство перестанет обновляться, да еще и лишится гарантии. Рассказываем, как проверить прошивку Xiaomi на оригинальность.

Читать далее
Новости партнеров