Google повністю припинить підтримку SYSTEM_ALERT_WINDOW (API накладення) у майбутньому випуску Android, що підштовхне розробників до Bubbles API в Android Q.
Щорічна конференція розробників I/O від Google переповнена новинами про всі програми, служби та інструменти розробників Google, але ОС Android є однією з найбільших тем. Android, який зараз використовується на понад 2,5 мільярдах пристроїв у всьому світі, займає величезну частину часу на Google I/O. Платформа вносить багато змін – фактично так багато, що Google не може приділяти однакову увагу кожній зміні. Під час розмови «Що нового в Android» у перший день I/O 2019 Google оголосив про майбутню серйозну зміну дуже старого API: SYSTEM_ALERT_WINDOW. API дозволяє розробникам малювати накладку поверх екрана, і найвідомішим його використанням є бульбашки голови чату (наприклад, Facebook Messenger). Тепер, коли Google пропонує альтернативний API для SYSTEM_ALERT_WINDOW у формі Бульбашки в Android Q, Google вирішив остаточно припинити підтримку SYSTEM_ALERT_WINDOW у майбутньому випуску Android.
На стіні було написано про припинення підтримки SYSTEM_ALERT_WINDOW. Дозвол додатку накладати вікна поверх інших додатків створює очевидний ризик для безпеки; сумно відомий "Плащ і кинджал" експлойт довів, що SYSTEM_ALERT_WINDOW потрібно було приборкати.
Google почав обмеження площ у якому накладення можуть відображатися в Android Oreo, і вони повністю видалили доступ до API для Android Q (Go Edition). Найбільша проблема з SYSTEM_ALERT_WINDOW полягає в тому, що, незважаючи на той факт, що користувачі повинні вручну надавати дозвіл через спеціальний екран керування дозволами, магазин Google Play автоматично надає доступ до дозволу установка. В Android Q доступ до дозволу SYSTEM_ALERT_WINDOW є тимчасовим: програми, завантажені збоку, мають доступ до дозволу лише протягом 30 секунд, а програми, встановлені через Google Play, мають доступ до дозволу до перезавантаження пристрою.
Але в майбутньому випуску Android SYSTEM_ALERT_WINDOW буде повністю застарілим, і всі програми Android, які його використовують, повинні будуть перейти на новий Bubbles API представлено в Android Q beta 2.
Однак бульбашки є частиною API сповіщень, тому вони не є повною заміною SYSTEM_ALERT_WINDOW. Хоча бульбашки мають форму крихітної активності зі змінним розміром, користувач має запускати їх зі сповіщення, яке відповідає одному або декільком ці умови.
Розробникам додатків, які використовують API SYSTEM_ALERT_WINDOW, яких є багато, найближчим часом доведеться почати шукати альтернативний API Bubbles. Ми спробували дізнатися, коли Google планує припинити підтримку API, але не отримали відповіді. Однак припустімо, що API не протримається дуже довго: я можу посперечатися, що він більше не буде доступний в Android R.
Ви можете переглянути повну сесію «Що нового в Android» за наступним посиланням YouTube (початок о 16:53).