Google разрешила платить мимо кассы Google разрешила платить мимо кассы Актёр клонировал голос, чтобы отбиться от пиратов Актёр клонировал голос, чтобы отбиться от пиратов TSMC переводит ИИ на свет TSMC переводит ИИ на свет YouTube судят за то, что он не отключил рекламу Premium-подписчикам YouTube судят за то, что он не отключил рекламу Premium-подписчикам

Андроид начал хромать

3 мин

Вчера многие пользователи Android устройств успели серьёзно понервничать. Дело в том, что после обновления одного из системных компонентов, большинство приложений перестали запускаться. Так как на смартфонах постоянно что-то обновляется в фоновом режиме, то даже искушённым пользователям не сразу удалось связать очередное обновление компонента WebView и вылеты при старте многих популярных программ. Ведь при этом не показывалось синих экранов или хотя бы просто диалоговых окон, сообщающих о том, что что-то пошло не так.

Перестали работать продукты выпущенные как самим Гуглом, вроде Gmail, так и сторонними разработчиками. Все потому, что WebView используется очень многими приложениями: от казуальных игр и соцсетей до профессиональных инструментов и платёжных сервисов вроде Samsung Pay. Фактически, у большинства пользователей, которые успели получить это обновление, смартфоны на несколько часов утратили заметную часть своих возможностей. Если судить по отзывам в магазине Google Play, то для многих это стало крайне неприятной ситуацией. Понятное дело, что в первые часы весь гнев обрушился на разработчиков приложений, а не на Гугл. Официальное объяснение причин произошедшего и рекомендация удалить обновления WebView (или наоборот, установить новейшую версию) появились спустя несколько часов.

И хотя сам инцидент вроде как исчерпан, он стал хорошим поводом для того чтобы вспомнить о некоторых важных вещах. Как о философских, вроде того, насколько мы стали зависеть от смартфонов и сервисов, к которым они предоставляют доступ, так и о более конкретных, вроде того, какую ответственность ИТ-гиганты несут перед своими клиентами. Любой кто хоть раз читал лицензионные соглашения прекрасно понимает, что эта ответственность де-факто односторонняя: потребителя перед поставщиком. И это даже в том случае, если вы крупная компания, которая платит серьёзные деньги. В условиях продолжающейся монополизации рынка не стоит забывать об этом ни на минуту.

О том, что подобное может случится, и с довольно высокой степенью вероятности повторится ещё раз, говорят довольно давно. Android вообще излюбленная цель критики независимых разработчиков. При этом Гуглом движут благие намерения, а именно желание сочетать максимальную гибкость и дружественность к всё тем же разработчикам.

Ведь как появился этот самый WebView? По сути, это движок браузера Chrome, который вынесен в отдельный системный компонент. Сторонние приложения могут использовать его с помощью API, чтобы отображать веб-контент внутри приложений, без запуска отдельного браузера. Многие пошли ещё дальше, и пользуются им для того, чтобы реализовать часть интерфейса с помощью HTML или даже использовать JavaScript-код. Стильно, модно, молодёжно и позволяет сэкономить на разработке. Ну, как говорится, сами себе злобные буратины.

Проблема в том, что сбой WebView автоматически приводит к краху приложений которые его используют. Собственно, именно так и произошло вчера. Но во многих случаях разработчики вынуждены использовать WebView даже там, где использование внешнего браузера было бы более уместным. Например, в ситуациях, когда нужно просто показать веб-страницу, без какого-либо взаимодействия с ней. Это очень частый случай, но беда в том, что в последних версиях Android Гугл ограничивает доступ сторонних программ к браузеру Chrome. Конечно, можно просто открывать ссылку в новом окне, но это неудобно для пользователя и в ряде случаев чревато выгрузкой вашего приложения в пользу Chrome.

Простого выхода из этой ситуации нет, возможно, что в будущих выпусках Android будут найдены какие-то решения. И хоть пример Microsoft показывает, что достижение монопольного положения странным образом сказывается на качестве выпускаемых обновлений, мы все равно будем надеяться на благосклонность Вишну к программистам работающим над WebView и другими компонентами Android.