Google ще отмени напълно SYSTEM_ALERT_WINDOW (приложния програмен интерфейс (API) за наслагване) в бъдеща версия на Android, тласкайки разработчиците към API на Bubbles в Android Q.
Годишната I/O конференция за разработчици на Google е пълна с новини за всички приложения, услуги и инструменти за разработчици на Google, но Android OS е една от най-големите теми. 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 Store автоматично предоставя достъп до разрешението при инсталация. В Android Q достъп до разрешението SYSTEM_ALERT_WINDOW е преходно: странично заредените приложения имат достъп до разрешението само за 30 секунди, а приложенията, инсталирани чрез Google Play, имат достъп до разрешението до рестартиране на устройството.
Но в бъдеща версия на Android SYSTEM_ALERT_WINDOW ще бъде напълно отхвърлен и всички приложения за Android, които го използват, ще трябва да преминат към новата API за мехурчета въведен в Android Q beta 2.
Мехурчетата обаче са част от API за уведомяване, така че не са пълен заместител на SYSTEM_ALERT_WINDOW. Въпреки че балончетата идват под формата на малка дейност с възможност за промяна на размера, те трябва да бъдат стартирани от потребителя от известие, което отговаря на едно или повече от тези условия.
Разработчиците на приложения, които използват SYSTEM_ALERT_WINDOW API, от които има много, ще трябва да започнат да търсят алтернативния API на Bubbles в близко бъдеще. Опитахме се да получим времева линия кога Google планира да отмени API, но не получихме отговор. Да предположим обаче, че API няма да се задържи много дълго: бих се обзаложил, че вече няма да е наличен в Android R.
Можете да гледате цялата сесия „Какво ново в Android“ от следната връзка в YouTube (започва в 16:53.)