В Android 14 проблема с обоями
ДомДом > Новости > В Android 14 проблема с обоями

В Android 14 проблема с обоями

Jun 23, 2023

Если вам нравится использовать сторонние приложения для настройки обоев, вы можете быть шокированы, если у вас Android 13 или новее.

Google всегда делал вид, что стремится к конфиденциальности, и в последних нескольких выпусках Android было трудно утверждать обратное. Компания явно пыталась улучшить безопасность своей платформы, а также добавляла новые функции в Android 13 и Android 14, но не все изменения были хорошими. Фактически, одно из таких изменений, которое компания рекламирует (втихую) как улучшение безопасности, похоже, было реализовано случайно и делает так, что сторонние приложения не могут получить доступ к вашим обоям.

В теме Mastodon, которой поделился разработчик Android Закари Вандер, он описывает, как разделение разрешения READ_EXTERNAL_STORAGE на три отдельных разрешения нарушает работу приложений, взаимодействующих с обоями пользователя. Эти три разрешения предназначены для доступа к изображениям, видео и аудиофайлам, что, несомненно, является хорошим изменением. Однако API обоев (включая получение обоев пользователя) ранее также требовали этого разрешения. Поскольку они также не получили нового разрешения, а Android 13 больше не поддерживает предоставление разрешения READ_EXTERNAL_STORAGE, альтернативы нет.

Об этом поведении сообщалось как об ошибке в прошлом году, перед выпуском Android 13, и Google не отвечал (кроме первоначального запроса на дополнительную информацию) в течение нескольких месяцев. В мае этого года сотрудник Google ответил, что проблема не будет исправлена, добавив следующее:

«Мы обсудили поведение с нашей командой разработчиков и разработчиков, и они поддержали сохранение API доступным только для привилегированных системных приложений».

Почему это важно, многогранно. Если вы используете свой телефон только с обоями по умолчанию (или с любыми другими обоями по умолчанию) и не слишком углубляетесь в настройку, то, вероятно, у вас все в порядке. Однако это повредит любым приложениям, которые могут управлять вашими обоями. Например, LWP+ требует доступа к резервному копированию, импорту и экспорту ваших обоев, но он не сможет этого сделать, если он потребуется для новых версий Android. Это приложение также используется для настройки пользовательских цветов Material You, но в будущем вы не сможете это сделать, если это не изменится. В опубликованных на данный момент сроках Google указано, что приложения должны будут ориентироваться на Android 13 к концу августа.

Хуже того, Вандер сообщает, что у него были проблемы с тем, что сторонние программы запуска не могли отображать его собственные обои. Хотя нам не удалось воспроизвести такое же поведение, мы протестировали ряд сторонних программ запуска на последней бета-версии Android 14 и отметили, что в одной программе запуска, Lynx Launcher, возникли проблемы, связанные с разрешениями. Он выдал ошибку, сообщающую, что не удалось получить все необходимые разрешения, которые мы не смогли исправить, и мы не смогли установить собственные обои из Google Фото.

Мы обратились к Nova Launcher за комментариями, и нам сказали, что, хотя до сих пор они видели проблемы, связанные с разрешениями, возникающие только на устройствах, связанных с Samsung, представитель компании сказал мне: «Прискорбно видеть, что они теперь отметил это как предполагаемое поведение». Одна из таких проблем с разрешениями на устройстве Samsung, которую мне показали, заключалась в том, что при установке обоев из средства выбора обоев Nova появлялась ошибка с надписью «Разрешение отклонено», и обои не были установлены. Эти отчеты поступали только с устройств Samsung, и команде пока не удалось воспроизвести их на Google Pixel.

Чтобы внести ясность, этот API никогда не был доступен только для привилегированных системных приложений, и это было результатом, по-видимому, недосмотра при разделении разрешения READ_EXTERNAL_STORAGE, которое в первую очередь привело к этой ситуации. Это разрешение на самом деле все еще существует и на Android 13, и контроллер разрешений просто отказывает в нем любому приложению, запрашивающему его, если это приложение предназначено для Android 13. Контроллер разрешений Android — это модуль Project Mainline, поэтому Google теоретически может исправить это поведение на Android 13. устройства. В нынешнем виде Google вскоре потребует обновления всех приложений, ориентированных на Android 13 или новее, а это означает, что эти приложения больше не смогут получить доступ к вашим обоям.