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

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

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

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

Обновление приложения @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) область памяти, и уже затем производить с ней манипуляции. Представьте какой-нибудь редактор видео. Вы открываете видеоролик размером в 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. Но при этом разработчикам теперь нужно будет дольше возиться с разработкой, что не нравится, конечно же, кодерам, но для пользователей это, конечно, плюс.

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

Теги
Читайте также
Google начала активную борьбу со взломами Android

Android всегда подкупал пользователей своей открытостью. В отличие от iOS, он никак не ограничивал их в стремлении изменить и подстроить интерфейс под себя. Поэтому до определённого момента считалось нормой купить смартфон на Android, получить рут-права и прошивать и перепрошивать его до одурения. Но, очевидно, Google не очень устраивало, что Android считают уделом бедноты и гиков, которых хлебом не корми, дай взломать и окирпичить новыми кастомами всё, что взламывается и окирпичивается. В результате компания объявила этой зловредной практике самую настоящую войну, которую ведёт до сих пор.

Читать далее
Как Apple сделала Google услугу, представив iOS 14

Заголовок этой статьи кому-то может показаться абсурдным, но это только на первый взгляд. На самом деле, действия компаний часто влияют на ее конкурентов и иногда это не просто какое-то легкое влияние. Часто оно буквально переворачивает все с ног на голову. В эти моменты как никогда лучше подходит фраза ”что не убивает - делает нас сильнее”. Впрочем такие повороты судьбы редкость, но просто помощь можно найти и в том, что твой конкурент представил новую прошивку для своих смартфонов. Давайте попробуем понять, как новая iOS 14 сможет помочь Android.

Читать далее
Какой телефон купить, чтобы его было проще потом продать

Многие пользователи, покупая смартфон, смотрят не только на то, сколько у него оперативки или баллов в Antutu, но и на то, сколько он будет стоить через 2-3 года, когда придет время его продавать и покупать новый. Имея такой подход, можно сэкономить даже не пару тысяч, а пару десятков тысяч рублей. Впрочем, такие цифры скорее исключение, чем правило. Признаюсь честно, раньше я не обращал большого внимания на такие изменения в стоимости, но на днях задумался и, сопоставив факты, пришел к определенным выводам. Некоторые из них будут слишком очевидны, а некоторые сэкономят нашим читателям время и деньги.

Читать далее

1 комментарий Оставить свой

  1. KoNeko

    Андроид всё больше превращается в iOS. Всё закрытие и закрытие…

Новый комментарий