В Android 14 є проблема з шпалерами

click fraud protection

Якщо ви любите використовувати програми сторонніх розробників, щоб налаштувати свої шпалери, ви можете бути вражені, якщо у вас 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 Photos.

Ми звернулися до Nova Launcher, щоб отримати коментар, і нам сказали, що поки вони бачили проблеми, пов’язані з дозволами, лише на пристроях, пов’язаних із Samsung, прес-секретар компанії сказав мені, що "прикро бачити, що вони зараз позначили це як заплановану поведінку". Одна з таких проблем із дозволами на пристрої Samsung Мені показали, що під час встановлення шпалер із засобу вибору шпалер Nova з’явилася помилка «Дозвіл відмовлено», а шпалери не було встановити. Ці звіти надходять лише з пристроїв Samsung, і команда не змогла відтворити їх на Google Pixel ще.

Щоб було зрозуміло, цей API ніколи не був доступний лише для привілейованих системних програм, і це було результатом того, що, здається, недогляд у розподілі дозволу READ_EXTERNAL_STORAGE, що призвело до цієї ситуації в першому місце. Цей дозвіл фактично все ще існує в Android 13, і контролер дозволів просто відмовляє в ньому будь-якій програмі, яка запитує його, якщо ця програма націлена на Android 13. Android Контролер дозволів це Проект Mainline модуль, тому Google міг би теоретично виправте цю поведінку на пристроях Android 13. У поточному стані Google незабаром вимагатиме оновлення всіх програм, орієнтованих на Android 13 або новішої версії, тобто ці програми більше не матимуть доступу до ваших шпалер.

Власна документація Google щодо Менеджер шпалер клас так само легковажний. У ньому зазначено, що «починаючи з T, прямий доступ до шпалер більше неможливий, натомість за замовчуванням системні шпалери повернуто", і що з версії U (Android 15) не слід використовувати певні методи класу все.

Якби це було вдосконалення безпеки, було б дивно, що компанія не привернула уваги до всього цього, і важко зрозуміти, як саме це було б взагалі. Ми звернулися до Google і оновимо цю статтю, якщо отримаємо відповідь.