MForum.ru
16.09.2015,
На персональных компьютерах с Windows или Lunux «плавающие» окна приложений являются одним из традиционных элементов интерфейса. Более того, далеко не каждую программу можно переключить в полноэкранный режим. Обычно такая функция доступна браузеров и различных медиаплееров. В мобильных операционных системах ситуация противоположная – запущенная программа, как правило, занимала весь экран, а «плавающие» окна были экзотикой.
В тоже время нельзя не признать, что на смартфонах с большими экранами или планшетах плавающие окна удобны. Одним из первых подобный функционал был реализован в флагманских смартфонах Samsung, где появилась возможность разместить рядом окна двух запущенных приложений. Впрочем, за другими разработчиками дело не стало и в Google Play стало появляться все больше приложений и виджетов, умеющих работать в плавающем окне. В целом эта функция довольно удобна, а в ряде ситуаций практически незаменима. Например, плавающие окна используются в пакете программ Tiny Apps, заметках Floating Notes 2, рисовалке Floating Draw, браузере OverSkreen и терминале AirTerm.
Более того, плавающие приложения даже стали называть одним из символов гибкости операционной системы Android в части адаптации под нужды конкретного пользователя. Ни одна другая операционная система для мобильных устройств не позволяет несистемным приложениям напрямую взаимодействовать с пользователем, выводя свое окно на передний план, поверх окон других приложений.
С одной стороны, это позволяет получить отличный пользовательский опыт в части подстройки приложения под потребности пользователя. И это прекрасно! В тоже время подобная гибкость может стать проблемой, если приложение плохо реализовано или его разработчики решили злоупотребить этой привилегией для вредоносных целей. Например, это может быть навязчивый показ рекламы или попытка принудить к покупке разблокировщика.
Однако с выходом Android 6.0 Marshmallow правила игры изменятся. Начиная с Developer Preview 3 приложениям, использующим API 23 (или новее), потребуется получить отдельное разрешение на право рисовать поверх других окон. Причем это будет сделано не через новый интерфейс системы разрешений с дружественными интерфейсом, а более сложным способом, через соответствующее подменю настроек устройства (как, например, при установке сторонней клавиатуры).
Возникает вполне резонный вопрос, зачем усложнять жизнь пользователю за счет более запутанного способа получения нужного разрешения? Причина проста – возможность вывода изображения поверх других приложений потенциально очень опасна. Например, создатели фишинговых приложений могут отображать клонированный экран ввода учетных данных поверх оригинального. И речь здесь может идти не только об аккаунтах социальных сетей, но и банковских клиентах. Например, в России мишенью создателей вредоносных программ вполне может стать Сбербанк или другие крупные банки, на деньги вкладчиков которых за последнее время создатели вирусов для мобильных устройств произвели ни одно покушение.
Что все это значит для пользователей? В один клик разрешить приложению рисовать поверх содержимого других окон не получится. В этом вопросе не будет никаких стандартных диалогов, в которых «Далее» или «Ок» можно нажать даже не читая, что именно просит предоставить программа. Чтобы дать приложению возможность вывода всплывающих окон пользователь должен выполнить ряд дополнительных шагов. Таким образом, исключается какой-либо автоматизм при предоставлении подобных разрешений. На мой взгляд, хоть подобный шаг и добавляет лишних действий, но он вполне оправдан.
Более того, вполне возможно, что разработчики снабдят свое приложение подробной инструкцией, как именно включить необходимое разрешение. Однако, в отличие от бездумного нажатия «Да» / «Продолжить», необходимость следовать некой инструкции ведущий в дебри настроек (для неопытного пользователя) заставляет задуматься. И для вредоносной программы это может вполне стать стоп-фактором.
К сожалению, на API версии 22 (и ниже) разрешение предоставляется автоматически. Скорее всего, в Google на этот шаг пошли для обеспечения совместимости с более ранними приложениями. Впрочем, через соответствующее подменю, для любого из установленных приложений это разрешение можно отозвать. Но в любом случае, решение со стороны Google усложнить процесс получения разрешения, выводить свое содержимое поверх других окон, шаг оправданный. Согласитесь, лучше вручную разрешить нескольким приложениям, которым это действительно необходимо, выводить свою информацию поверх окон других приложений, чем скомпрометировать информацию своей учетной записи социальных сетей или системы интернет-банкинга.
© Антон Печеровый, , по информации androidpolice.com
Публикации по теме:
17.04. Motorola Edge 50 Fusion – основная камера 50 Мп и аккумулятор емкостью 5000 мАч
08.05. Опубликованы данные о распространении версий ОС Android
24.04. Vivo Y53 – смартфон начального уровня
05.04. Представлен защищенный смартфон Archos Saphir 50X
13.10. OPPO F3 Lite (A57) представлен официально
03.10. В сентябре доля Android 8.0 Oreo составила 0,2%
28.09. LG K7i – смартфон с отпугивателем москитов
17.09. Vivo V80 получит камеру с 30 AI-эффектами и батарею 7200 мАч
17.09. MediaTek представила Dimensity 9600 Pro – первый 2-нм чип с LPDDR6 и UFS 5.0
16.09. Xiaomi Pad 9 и Pad 9 Pro представлены в Китае - экран 3.2K@144 Гц и чипы Snapdragon
16.09. Samsung тихо выпустила Galaxy A18 в Европе – Exynos 1610 и цена €280
15.09. Tecno показала концепт безрамочного смартфона на базе Camon Slim 5G
15.09. Honor Play 11 с АКБ 8300 мАч, защитой IP69K и ценой от $195 представлен в Китае
15.09. Samsung представила OLED-дисплей M16 с яркостью 10 000 нит
14.09. Серия Honor Magic 9 получит 3 модели, в том числе с АКБ до 11 000 мАч
14.09. Samsung начала продавать восстановленные Galaxy S26 и S26 Ultra в Индии
14.09. Vivo Buds с 50 часами работы и 42 мс задержкой за $20 представлены в Индии
11.09. HMD возрождает бренд Asha - представлен бюджетный смартфон Asha 30
11.09. Apple представила AirPods 5 – улучшенное шумоподавление и Live Translation
11.09. Apple представила Watch Series 12 и Watch Ultra 4 – новый чип S11 и рекордная автономность
10.09. Apple представила iPhone 18 Pro и 18 Pro Max: 2-нм чип A20 Pro и камера с переменной диафрагмой
10.09. Apple iPhone Duo – первый складной смартфон Apple оценен в $1999
10.09. Realme представит 16 Pro и Buds T500 Pro в стилистике вселенной Гарри Поттера
10.09. Tecno Camon Slim 5G получил корпус толщиной 6.39 мм, 144 Гц AMOLED-экран и АКБ 6000 мАч
09.09. Xiaomi Pad 9 Pro Max – флагманский планшет на Xring O3 с 13.3" 144 Гц и 12000 мАч
09.09. Oppo A7 Pro с АКБ 8000 мАч, зарядкой 45 Вт и ценой от $330 представлен в Китае
09.09. Infinix Xpad 30 Pro с 2.5K-экраном и АКБ 8200 мАч представлен глобально