- Android System Webview — что это за приложение и почему оно не включается
- Что такое Android System Webview (com.google.android.webview)
- Почему это приложение не включается
- WebView
- Загружаем локальные страницы и картинки
- Загружаем данные при помощи loadData() и loadDataWithBaseURL()
- Проблемы с кодировкой
- Методы
- Используем зум для просмотра
- Прозрачность
- WebView в Lollipop
- Советы
- Касания экрана
- Настройки
- Ночной режим
- Зачем Android нужен WebView и как он работает
- Что такое Android WebView
- WebView и Google Chrome
- Как обновить Android WebView
Android System Webview — что это за приложение и почему оно не включается
Владельцы Android телефонов и планшетов иногда обращают внимание не приложение Android System Webview com.google.android.webview в списке приложений и задаются вопросами: что это за программа и, иногда, почему она не включается и что нужно сделать, чтобы её включить.
В этой короткой статье — подробно о том, что представляет собой указанное приложение, а также о том, почему оно может быть в состоянии «Отключено» на вашем Android устройстве.
Что такое Android System Webview (com.google.android.webview)
Android System Webview — это системное приложение, позволяющее открывать ссылки (сайты) и другой веб-контент внутри приложений.
К примеру, я разработал Android-приложение для сайта remontka.pro и мне требуется возможность открытия какой-то страницы этого сайта внутри своего приложения без перехода в браузер по умолчанию, для этой цели можно использовать Android System Webview.
Почти всегда это приложение предустановлено на устройствах, однако, если по какой-то причине его нет (например, вы удалили его с помощью root-доступа), вы можете скачать его из Play Маркет: https://play.google.com/store/apps/details?id=com.google.android.webview
Почему это приложение не включается
Второй часто задаваемый вопрос об Android System Webview — почему оно отключено и не включается (как его включить).
Ответ простой: начиная с Android 7 Nougat оно перестало использоваться на некоторых устройствах и в этом случае по умолчанию отключено. Теперь те же самые задачи выполняются через механизмы Google Chrome или встроенные средства самих приложений, т.е. необходимости во включении нет.
Если же у вас есть острая необходимость включить именно System Webview в Android 7 и 8, для этого существуют следующие два пути.
Первый — более простой:
- В приложениях отключите Google Chrome.
- Установите/обновите Android System Webview из Play Маркет.
- Откройте что-то, что использует Android System Webview, например, зайдите в настройки — Об устройстве — Юридическая информация — Правовая информация Google, затем откройте одну из ссылок.
- После этого вернитесь к приложению, и вы сможете увидеть, что оно включено.
Учтите, что после включения Google Chrome оно снова отключится — они не работают вместе.
Второй — несколько сложнее и не всегда работает (иногда возможность переключения отсутсвует).
- Включите режим разработчика на вашем Android-устройстве.
- Зайдите в раздел «Для разработчиков» и нажмите по пункту «Сервис WebView».
- Возможно, вы увидите там возможность выбрать между Chrome Stable и Android System WebView (или Google WebView, что одно и то же).
При изменении сервиса WebView с Chrome на Android (Google) вы включите рассматриваемое в статье приложение.
А вдруг и это будет интересно:
08.04.2018 в 09:07
Здравствуйте! На андроид 5,1 случайно удалил это приложение (root-права), скачиваю с маркета — не включается ни одним из вышеуказанных способов. Как принудительно вернуть его в систему? или может перенести apk в другой раздел?Спасибо.
09.04.2018 в 08:58
Здравствуйте, странно, что не ставится/не включается. А какие-то проблемы при работе от этого присутствуют?
Тут бы самому попробовать, но не на чем (у меня Android-ов ниже 7 для экспериментов даже и не осталось).
01.11.2018 в 23:37
Ху, спасибо большое!! Помогли, я и не думал, что из за удаленного хром может телефон не заходить на почту mail.ru
16.12.2018 в 18:00
Спасибо огромное, вы меня просто спасли, я перелопатила много материала на данную тему, и только вы дали толковый ответ. Прошлый раз мне снесли настройки, слетело все, игра, которую пришлось начинать с нуля, она не переносится на другие устройства. Так что спасибо большое. А ведь все оказалось очень просто и легко это сделать. Вы молодцы..
16.03.2019 в 15:01
Добрый друзья! Почему не установить Android System WebView, уже прошло около несколько месяцев?
17.03.2019 в 10:09
Не вполне понял ваш вопрос… О каких нескольких месяцах речь? Свои советы по установке я изложил в статье, для тех случаев и устройств, где это возможно.
18.03.2019 в 00:29
Спасибо. В маркете пишут что приложение умеет готовить и конструировать армию роботов и никто не потрудиться грамотно всё изложить как вы. Я только не понял что лучше для телефона — удалить хром и пусть обновляется это или удалить это и оставить хром или и это и хром удалить и запретить обновляться?
18.03.2019 в 09:25
Оставить как есть. Если только вы свои приложения не пишете и вам требуется проверить работу именно Webview.
22.03.2019 в 11:48
Добрый день! В течение дня приходится пользоваться разными приложениями (mail.ru, гугл, ютуб и пр.) телефон сначала исправно работает. На следующий день невозможно войти в приложения — пишет ошибка WebView. Перезагрузка телефона все исправляет до следующего дня. При обновлении WebView не может установиться. Что можно сделать? Спасибо!
22.03.2019 в 12:18
Здравствуйте.
Боюсь, тут не могу ответить, т.к. не понимаю причин описанной проблемы. Можно в теории поставить последний apk WebView с сайтов наподобие apkmirror, но не уверен, что вообще в этом дело.
31.03.2019 в 23:18
Может быть кому-нибудь это поможет: некоторые приложения, дополнительно установленные на Android TV (7.1.2), не запускались из-за ошибки webview. Переустановка с маркета не помогла, но внезапно помогло отключение режима «Многопроцессорный WebView» в меню Для разработчиков.
01.04.2019 в 11:06
Спасибо, что поделились, не знал о нюансе.
24.05.2019 в 20:12
У меня перестало работать, когда включил экономию экрана, выключил и всё заработало
08.06.2019 в 13:06
Добрый день! не обновляется данное приложение, как и хром ( идет бесконечная «установка» а далее, мол, ошибка: а какая не указывают), уже даже снес два раза все к заводским настройкам. ПОдскажите, что делать
02.02.2021 в 00:40
Было такое. Перепробовал несколько разных советов (чистка кэша всего и вся, и подобные советы), но в итоге помогло другое: в Настройках отключил режим разработчика и всё обновилось (СяоМи ми а2 лайт, андроид 10)
23.03.2021 в 20:34
А где именно в настройках находится режим разработчика?
23.03.2021 в 20:43
Вот здесь описано как включить его: https://remontka.pro/developer-mode-enable-windows-10/ плюс в комментах дополнения есть по некоторым моделям.
29.07.2019 в 04:09
Привет всем! Знающим и любознательным! Очень интересная тема про режим разработчика, хочу узнать подробнее о правильных настройках и дополнительных полезных возможностях этого режима. Ведь бывает так что не возможно удалить какой либо вредонос а сбрасывать телефон тоже не хочется когда всё настроено..да и скачивать с play market вспомогательные приложения тоже порой не безопасно,да и требований к разрешениям тоже слишком много… получается один вредонос удалил,а другой установил.. замкнутый круг. Надоело. Проясните пожалуйста или ссылочки подскажите. Заранее благодарю!
02.04.2020 в 05:08
На 5 ом базе уже отсутствует обновление и по этому вы не можете установить!
16.10.2020 в 08:49
Redmi 8 и Android 10Q. Приложение установлено по умолчанию, работает и удалить его штатными средствами невозможно. Кажется, информация в статье устарела. Цитирую:
«…начиная с Android 7 Nougat оно перестало использоваться и по умолчанию отключено.»
Источник
WebView
WebView — это компонент, который позволяет встраивать веб-страницы в приложения, своеобразный мини-браузер. Находится в разделе Containers.
В старых версиях Android WebView использовал движок WebKit. В Android 4.4 он стал использовать движок Chromium или Blink. В Android 5 появилось отдельное приложение System WebView, которое можно скачать из Play Market. Такое разделение позволило обновлять движок без обновления системы. На этом приключения не закончились. В Android 7.0 уже используется движок Chrome, а если этого браузера на устройстве нет, то используется System WebView. Подобные выкрутасы не прошли даром, программисты часто жалуются, что какой-то кусок кода не работает. Приходится проверять работу на разных устройствах.
Надеюсь, вы уже познакомились с базовым примером по созданию собственного браузера. Рассмотрим дополнительные возможности элемента WebView.
Загружаем локальные страницы и картинки
Если вы хотите загружать в WebView страницы не из интернета, а со своего приложения, то разместите нужные файлы в папке assets, например, assets/mypage.html. Доступ к файлу вы можете получить через конструкцию file://android_asset:
Аналогично поступаем с картинками, которые встречаются в html-файле
Также можно загрузить файл из папки res/raw:
Если картинка находится на внешнем накопителе, то попробуйте вариант:
Недавно наткнулся на фрагмент кода, где нужно добавить несколько новых настроек для работы с файлами. Пример для Kotlin.
Загружаем данные при помощи loadData() и loadDataWithBaseURL()
Данные можно загрузить с помощью метода loadData():
Если текст простой, то этот способ подойдёт. Но в данном примере встречается символ процента, который относится к спецсимволам и часть текста может оказаться недоступной. Если в тексте встречаются подобные символы, то лучше использовать метод loadDataWithBaseURL():
Если вам приходится использовать loadData(), то спецсимволы можно заменить при помощи метода replace():
Проблемы с кодировкой
У меня есть программа в Google Play, использующая WebView. К моему удивлению, некоторые пользователи жаловались, что текст нечитаем, так как они видят только кракозябры. Особенно много жалоб было от пользователей с планшетами. Оказалось, что проблема довольна распространённая и обсуждается на форумах. Танцы с бубнами (установка явной кодировки UTF-8) не помогают. Нашёл один ответ, который у некоторых заработал, на всякий случай я его здесь оставлю.
Но я рекомендую просто использовать метод loadDataWithBaseURL(). Работает стабильно.
Методы
У WebView есть множество методов, которые позволяют добиваться полной функциональности как у обычного браузера — обновить страницу, перейти на предыдущую страницу и т.д. Часть методов представлена ниже:
Используем зум для просмотра
Не забывайте, что WebView можно использовать не только для просмотра html-страниц, но и для просмотра изображений. Поэтому данный компонент вполне можно использовать просмотра картинок с котиками, к тому же вы можете включить встроенный механизм масштабирования:
Прозрачность
Устанавливать прозрачность лучше программно. Встречал жалобы, что через XML это свойство не работает.
WebView в Lollipop
В Android 5.0 компонент доступен в Google Play (Android System WebView) и его можно обновлять на устройстве.
Компонент теперь основывается на движке Chromium и поддерживает следующие новинки.
Можно ознакомиться с некоторыми примерами — GoogleChrome/chromium-webview-samples. Там есть примеры с WebRTC, полноэкранным режимом, касаниями экрана, выбора файла, работой с JavaScript-сценариями.
Кроме того, стал доступен Safe Browsing — механизм, предупреждающий об опасных ссылках. Включается через манифест.
Советы
Если вы заметили, что экран мерцает во время загрузки WebView, то поменяйте фон. Мерцание происходит из-за смены фона приложения (темы), на белый фон по умолчанию для WebView, а потом на фон, который прописан на странице.
Касания экрана
Так как поддерживаются касания экрана, то старайтесь использовать на веб-странице визуальные эффекты нажатия кнопок и других элементов при помощи псевдокласса :active, например, так:
Настройки
В API 24 появилась возможность открыть окно настроек и выбрать движок для WebView:
Ночной режим
Появилась поддержка тёмной темы в последних версиях WebView.
За ночной режим отвечает класс WebViewFeature, который имеет в своём составе коллекцию различных возможностей. Проверить поддержку той или иной возможности можно через isFeatureSupported().
Всего три варианта для тёмной темы.
- FORCE_DARK_OFF
- FORCE_DARK_AUTO
- FORCE_DARK_ON
Источник
Зачем Android нужен WebView и как он работает
Несмотря на то что почти все смартфоны на Android получают новые версии ОС только два года, Google худо-бедно старается их поддерживать в актуальном состоянии ещё какое-то время путём обновления своих сервисов. Для этого поисковый гигант просто рассылает апдейты через Google Play, чтобы те пользователи, которым уже не светят традиционные обновления, могли получить запланированные нововведения и экстренные баг-фиксы. Однако, многие, как показала практика, этого не знают, и, видя, как системные компоненты с непонятными им названиями, спрашивают, например, что такое WebView и зачем это нужно. Восполняю пробел.
Вы много раз видели Android System WebView, но наверняка не знаете, что это и зачем нужно
Вы могли видеть WebView, полное название которого Android System WebView, в двух местах: в каталоге Google Play и в разделе «Приложения». Причём мелькает он заметно чаще других, периодически получая обновления и фигурируя в описаниях обновлений стороннего софта, разработчики которого почему-то считают необходимым упомянуть его. Прямо-таки в каждой бочке затычка. Однако, если разобраться чуть глубже, всё становится на свои места.
Что такое Android WebView
WebView — это встроенный браузер для приложений
WebView – это системный компонент, или, проще говоря, приложение, которое отвечает за открытие веб-страниц в рамках других приложений. Думаю, вам не раз приходилось открывать ту или иную ссылку в мессенджере, социальной сети или клиенте электронной почте. Так вот, если вы заметили, почти всегда нажатие на ссылку приводит к тому, что она открывается в интерфейсе самого приложения, вместо того чтобы перенести вас в браузер. Таким образом разработчику проще отслеживать ваши действия, поскольку получить их из стороннего браузера у него не выйдет.
Google рассказала, что изменится в Google Chrome после обновления
Но поскольку Android System WebView является, по сути, самостоятельным компонентом, периодически пользователи сталкиваются с проблемами в его работоспособности. Одни уверяют, что WebView не работает, другие сообщают, что WebView не обновляется, а третьи – что WebView недоступен. Казалось бы, причины у этих проблем могут быть самые разные и, чтобы что-то советовать пользователям, которые с ними столкнулись, нужно хотя бы разузнать дополнительные подробности или по крайней мере худо-бедно разбираться в разработке приложений и особенностях функционирования системных компонентов. Но нет.
WebView и Google Chrome
В конце прошлого года Google интегрировала в Android System WebView компонент Chrome WebView. Проще говоря, компания просто сделала так, что теперь все ссылки в сторонних приложениях будут открываться в виджете Chrome, который будет встроен во все программы по умолчанию. Поисковый гигант объяснил это тем, что это позволяет снизить нагрузку на ресурсы устройства и облегчит эффективность обновления. Но, как показывает практика, это только лишний раз запутало пользователей, которые вообще перестали понимать, что им делать в случае возникновения проблем.
Samsung хочет, чтобы Chrome для Android получил поддержку расширений
А, между тем, всё очень просто. Несмотря на то что Android System WebView по-прежнему обновляется самостоятельно, он глубоко связан с Google Chrome. Поэтому, когда вы сталкиваетесь с перебоями в работе системного компонента, вам нужно не искать обновления для него, а установить апдейт браузера.
Как обновить Android WebView
- Для этого перейдите в Google Play и свайпните от левого края экрана;
- Перейдите во вкладку «Мои приложения и игры;
Зачастую обновлять следует не Android System WebView, а Google Chrome
- В открывшемся окне нажмите «Обновить всё» или отыщите Google Chrome и обновите его;
- Для надёжности рекомендуется обновить и Android System WebView, если для него тоже доступно обновление.
Chrome загружает процессор и жрёт зарядку? Google всё исправит
На первый взгляд, может показаться, что всё это глупости, и на самом деле обновления ничего не решают, но это не так. В прошлом Google неоднократно выпускала такие патчи, которые возвращали работоспособность системных компонентов, от которых во многом зависела и работа сторонних приложений. Последний такой случай произошёл в декабре прошлого года, когда из-за сбоя в Chrome пользователи лишились возможности открывать ссылки в приложениях, которые к Google не имеют никакого отношения. Поэтому не пренебрегайте обновлениями. Они выходят для вас.
Источник