Система Android WebView

When it comes to creating a desktop app with a web frontend, there are many options
outside WebView.

See an extensive list of Electron alternatives here: https://github.com/sudhakar3697/electron-alternatives

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

Если вы используете старую версию Android, в частности Android 7, 8 или 9, вы можете отключить WebView, не вызывая никаких проблем с другими приложениями, поскольку в этих версиях ОС функциональность WebView была встроена непосредственно в Chrome.

Что такое WebView системы Android?

Android System WebView — это компонент Android, который извлекает и доставляет контент из Интернета без открытия отдельного браузера. Изначально он был встроен в Android как неотъемлемая часть операционной системы и не был виден пользователям. Оно было выделено в отдельное приложение в Android 5, поэтому вы можете увидеть его в списке своих приложений.

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

Вы, несомненно, видели приложение «Android System Webview» в списке обновлений своих приложений, но, вероятно, не знаете, что это такое и нужно ли вам его удалить. Это может показаться неважным, но Android System Webview – это то, что вы определенно хотите сохранить на своем устройстве, особенно если на вашем устройстве установлена ​​версия Android ниже, чем Nougat.

Если вы используете устройство Android, работающее на Android Нуга или более поздней версии, вы не увидите само приложение. С Nougat Google переместил этот удобный инструмент в другое место, но он по-прежнему является частью Android.


Система Android WebView

Android System Webview – это уменьшенная версия Chrome Это позволяет вам открывать ссылки в приложении, которое вы используете, поэтому вам не нужно выходить из приложения.


Система Android WebView

Это означает, что при нажатии на ссылку в приложении откроется веб-просмотр системы Android, как если бы он был Встроенный браузер в приложении.

Следует иметь в виду, что не все приложения могут его поддерживать; По этой причине ссылки открываются из некоторых приложений в Chrome, а не из самого приложения.

Могу ли я удалить Android System Webview?

Если вы хотите избавиться от Android System Webview, вы можете удалить только обновления, а не само приложение. Это можно сделать, если на вашем устройстве Android не работает Nougat или более поздняя версия. С Nougat Google избавился от него как от отдельного приложения и вместо этого использует сам Chrome как приложение для функции веб-просмотра.

Если у вас есть приложение Nougat, но оно все еще есть, Android System Webview будет работать в Chrome, а не в приложении. Если приложение еще не сломано, можно сделать это самостоятельно.


Система Android WebView

Если вы используете Android Nougat или выше, вы можете безопасно отключить его, но если вы используете более ранние версии, лучше оставить все как есть. Если Chrome отключен, возможно, вы используете другой браузер. На этом этапе лучше всего оставить приложение Android System Webview.

Заключение

То, что вы не знаете, что это за приложение, не означает, что оно не делает ничего полезного. Если вы не знаете, что делает приложение, вам лучше поищите его, поскольку оно может привести к удалению существующего приложения только для обеспечения максимальной производительности.

Подготовить Веб-просмотр Необходимое приложение, не нужно его включать, оно запустится автоматически. Что вы думаете о веб-просмотре системы Android?

I need to call a website inside my app which isn’t displayed correctly by the native webview that comes along with android.

I already searched the net for some answers but I did find much beside this Is there an alternative to webview? .

As suggested in the post above, I already tested crosswalk. However, crosswalk has a lot of disadvantages:

So, I’m actually very desperately seeking an alternative but cannot find any.

Does anybody know a working and production ready webview? That would help me sooo much.

I had to add webView.getSettings().setDomStorageEnabled(true); to make the website work.

asked Oct 22, 2015 at 9:40

The new Chrome custom tabs for Android app developers.

Find Google code sample for Chrome custom tabs is here

Please check Implementation guide for Chrome custom tabs

answered Oct 22, 2015 at 10:52

24 gold badges96 silver badges146 bronze badges

Calling warmUpChrome as early as possible will make the switch to the browser faster. The implementation in the example works with deeplinks, but if you want to launch it manually rewrite launchUrl and give a URI or a String as a parameter. The code is mostly stitched together from other stackoverflow answsers, but I have changed some parts of it to work for my case.

answered Oct 22, 2015 at 13:48

2 gold badges34 silver badges48 bronze badges

FD_KIM,Не должно быть проблем.

В случае, если он не заменен чем-то другим

И чем лучше всего заменить?

Вопрос: У меня Андроид 7-9, а Android System WebView выключен, что делать? как обновить?Ответ: “В Android 7.0 уже используется движок Chrome, а если этого браузера на устройстве нет, то используется System WebView.”(Источник)Это значит если вы используйте Google Chrome на телефоне или включен, то Android System WebView автоматом выключается, а в случае его отсутствия или отключения будет использоваться Android System WebView.проверил на собственном опыте Google Chrome встроен в прошивку поэтому я его отключил и тут же Play Market предложил обновить Android System WebView и он включился))

У меня Андроид 10+:Вопрос: “У меня Андроид 10+ есть хром и webview, но гугл плей требует обновить и то и то, так и должно быть?”Ответ: “Да, с Андроида 10+ произошло разделение функционала и хром есть хром, а webview есть webview”(Источник на англ)

Сообщение отредактировал long76 – 17.05.20, 14:06

Причина редактирования: информация о android 10

Так эту программу можно удалить, если она Заморожена и никаких аномалий не наблюдалось? Пользуюсь только Хромом.

Сообщение отредактировал DEMIGODDD – 06.10.17, 16:27

DEMIGODDD,Верните все как было.

Никак не вернуть резервной копий нету. Пролистав нескольео страниц этой темы я заметил что гугловский Webview недружит с AOSP. А у меня как раз AOSP. Решил проблему установкой модуля Webview из Xposed.

а что мешает вытащить нужный файл из архива прошивки( или в теме девайса спросить копии, если нет возможности качнуть весь архив) и “воткнуть по местам” с разрешением как у соседних файлов через тот же фм twrp? :scratch_one-s_head:

Установлена AICP (7.1.2), установил рядом с AOSP WebView гугловский. Включил, как основной WebView гугловский. При попытках приложений использовать WebView, они вылетают или перезапускаются. Стоковый (AOSP) вью напрочь отказывается запускать видео HTML5 (звук есть, а видеоряд черный). Есть решение? В поиске по теме похожего не нашёл.

Updated. Установил Google Canary, включил его WebView, как основной – все тоже самое, что и с гугловским. Сам же Canary со своим же вью работает хорошо.

Сообщение отредактировал Константин Кресс – 14.10.17, 16:14

Прога огонь! Только за коменты на плей маркете, разрабам огромное спасибо!Читаю уже пол часа – ржу до слез :rofl:

.боюсь, что у меня такая же проблема, что и на пред.странице

Никак не включается

с той лишь разницей, что System WebView был выключен вручную :wallbash: теперь – не могу включить ни через Настройки-Приложения, ни через GP Маркет

Chrome удалял, запускал – толку “0”, также запускал “Новости”, YouTube,предложения вкл. – WebView небыло. Android 8.0.подскажите, как запустить его.

Сообщение отредактировал And_RU – 15.10.17, 20:02

Причина редактирования: скрины

adeich, исходя из последней ссылки – (и её, (пост) видел) – не заморачиваться, “забить” на всё?**Update.да, Вы правы – посмотрел в смарте супруги (Sony XA1 Ultra, Android 7.0) у неё тоже выключен))не указал сразу мой – Sony XZ1Compact OS Android 8.0

Сообщение отредактировал And_RU – 15.10.17, 20:25

And_RU, ага 😉 Я тоже вначале даже бета-версии “подсовывал” в систему в ручную, надоело, забил. Это если Chrome из системы сносить, тогда android system webview нужен будет, при наличии стабильной версии chrome он замораживается

Сообщение отредактировал adeich – 15.10.17, 20:27

Вообщем такая проблема. После обновления движка (до текущей 62.х) в ТВ-боксе перестал отрабатывать долгий клик мышки (аналог долгого тапа на сенсорном экране) на ссылках. Только откатываю обновление до предустановленного в прошивке (50.0.2661.86) долгий клик работает. Есть мнения как исправить? Может где в системе в файле настроек поменять что надо (рут есть)? Так же приветствуются ссылки на англоязычный ресурсы по обсуждениям сабжа. Да и если кто с таким сталкивался и заморачивался, то может знает какая последняя версия рабочая, если ничего нельзя изменить.

Сообщение отредактировал mitch_t – 23.10.17, 09:45

Web Browser 3.9.9 is an Android Social app developed by Mobile_V5. Explore 200 alternatives to Web Browser. Fast, safe, incognito Mobile Browser, Web Browser, private search download video.

GET IT

200 Alternatives to Web Browser

Viber 20.7.0.0 is an Android Communication app developed by Viber Media S.à r.l. Explore 200 alternatives to Viber. Viber is listed in Top 10 Photo Sharing Apps, Top 10 Apps for Free Calls & Texting. Enjoy secure messaging video and audio calls no matter where you’re calling.

GET IT

200 Alternatives to Viber

Outlook 4.2330.1 is an Android Productivity app developed by Microsoft Corporation. Explore 188 alternatives to Outlook. Manage your email & calendars on Outlook & collaborate with anyone, anywhere.

GET IT

188 Alternatives to Outlook

:/>  Поиск текста в нескольких файлах

GET IT

177 Alternatives to Drive

Google 14.32.17.28.arm64 is an Android Tools app developed by Google LLC. Explore 133 alternatives to Google. Google is listed in Top 10 Science Apps for Android, Top 10 Photo Sharing Apps. Find quick answers, explore your interests, and stay up to date with Discover.

GET IT

133 Alternatives to Google

Signal 6.28.6 is an Android Communication app developed by Signal Foundation. Explore 200 alternatives to Signal. Signal is listed in Top 10 Apps for Free Calls & Texting. Say “hello” to privacy.

GET IT

200 Alternatives to Signal

Web Browser 2.5.0 is an Android Communication app developed by Easyelife. Explore 178 alternatives to Web Browser. The FASTEST, EASIEST, SECURE mobile Web browser, easily explore search Google.

GET IT

178 Alternatives to Web Browser

GET IT

200 Alternatives to OneDrive

Chrome Beta 116.0.5845.78 is an Android Productivity app developed by Google LLC. Explore 182 alternatives to Chrome Beta. The speed and simplicity of Chrome, now on your Android device in beta.

GET IT

182 Alternatives to Chrome Beta

TeraBox 3.16.0 is an Android Tools app developed by Flextech Inc. Explore 156 alternatives to TeraBox. Get 1TB Cloud Storage Space with One-Click. Never Run out of Memory Again!

GET IT

156 Alternatives to TeraBox

AirDroid 4.3.1.1 is an Android Tools app developed by SAND STUDIO. Explore 200 alternatives to AirDroid. AirDroid is listed in Best 10 Screen Recorder Apps for Android. A one-stop solution for everything.

GET IT

200 Alternatives to AirDroid

Music 7.18.04.081021i is an Android Music & Audio app developed by Mi Music. Explore 176 alternatives to Music. Mi Music – Listen Unlimited, Surrounded by Rhythm!

GET IT

176 Alternatives to Music

Chrome Dev 117.0.5938.0 is an Android Communication app developed by Google LLC. Explore 165 alternatives to Chrome Dev. The speed and simplicity of Chrome, before everyone else.

GET IT

165 Alternatives to Chrome Dev

MX Player 1.71.4 is an Android Video Players & Editors app developed by MX Media & Entertainment Pte Ltd. Explore 200 alternatives to MX Player. Powerful video player with advanced hardware acceleration and subtitle supports.

GET IT

200 Alternatives to MX Player

Skype 8.101.0.212 is an Android Communication app developed by Skype. Explore 200 alternatives to Skype. Skype is listed in Top 10 Apps for Free Calls & Texting, Top 10 Video Conferencing Apps for Android. Connect, Create, Talk & Discover, now with Bing GPT-4.

GET IT

200 Alternatives to Skype

Web Browser 2.1.9 is an Android Communication app developed by iJoysoft. Explore 151 alternatives to Web Browser. Web Browser is Lightweight, secure, quick search, private mode Internet explorer.

ПОНЯТЬ

151 альтернатива веб-браузеру

Yahoo Mail 7.21.1 — это приложение для связи Android, разработанное Yahoo. Изучите 188 альтернатив Yahoo Mail. Управляйте делами с помощью Yahoo Mail. Работает с учетными записями электронной почты Gmail и Outlook.

ПОНЯТЬ

188 альтернатив Yahoo Mail

CPU X 3.7.2 — это приложение Android Tools, разработанное PrashantK. Изучите 200 альтернатив CPU X. Приложение высочайшего качества для спецификаций и тестирования устройств Android.

ПОНЯТЬ

200 альтернатив CPU X

Поймите, что я согласен с Commonswares и почти со всем, что указано в предоставленном ответе. Однако вопрос, похоже, подразумевает, что у вас есть проблема (либо в понимании, либо в концепции), и вы хотите найти/разработать более адекватное решение для ваших нужд.

Ответ на вопрос и ответы, которые вы, вероятно, получите:

Я считаю, что обоснованная критика Commonsware связана с тем, что вы не указываете, почему или как предоставленный объект платформы является неудовлетворительным, а также не указываете, почему или когда вы считаете, что Google заявил, что указанный объект ненадежен. Если вам нужна более качественная обратная связь, отредактируйте свой вопрос соответствующим образом, чтобы сообщить об этом, и у вас будет меньше проблем.

Далее, как объяснено далее ниже, вы намекаете, что это проблема с платформой Android (на самом деле почти прямо заявляете об этом), а это не так. Существует слишком много соображений в широком диапазоне просмотра веб-страниц, чтобы их можно было полностью решить с помощью простого элемента управления, такого как WebView. Microsoft столкнулась с той же проблемой со своим встроенным IE COM Object еще в 90-х годах. Это большая проблема, которая не принадлежит ни одной группе.

Ответ на подразумеваемый вопрос:

Объект WebView в основном представляет собой мини-браузер, использующий очень гибкий код рендеринга, основанный на параметрах, полностью отличающихся от параметров специализированного браузера. Это включает в себя все, от простого рендеринга до интерактивных (sp?) объектов, таких как ссылки, которые будут использоваться на такой странице. Этот процесс очень сложно (из-за отсутствия лучшего слова) миниатюризировать таким образом, чтобы возможности были одинаковыми для встраивания в различные приложения, которые каждый раз могут иметь различную структуру макета и параметры. Черт возьми, такие движки трудно запрограммировать единообразно даже с помощью специального механизма просмотра, что приводит к множеству различий между текущими основными браузерами в целом.

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

Таким образом, WebView предоставляется как решение для отображения контента, доставляемого через Интернет, без гарантии его расширяемости или удобства использования, если только вы не используете его исключительно для просмотра (и, возможно, реагирования) надежного и соответствующего стандартам HTML-кода. Как только вы ознакомитесь с реальной практикой веб-сайтов реального мира, вы поймете, что HTML был сделан таким гибким именно потому, что каждый стандарт на разных уровнях придерживался разных разработчиков. Поскольку основное кредо HTML заключается в том, что он работает (показывает контент), несмотря на потенциальную двусмысленность, проблема разработки полностью комплексного объектно-ориентированного решения, встроенного в приложение, становится еще сложнее.

Это зависит от содержания. Также философия разработки устройств Apple полностью отличается от философии Android. У Apple всего несколько устройств, поэтому они могут гарантировать единообразие на всех своих устройствах и выбирать, какие и когда добавлять дополнительные функции. Например, первый iPhone не имел встроенной поддержки Flash. Основываясь на последствиях вашего вопроса, я считаю, что это не соответствует «всестороннему» тесту.

Android, напротив, имеет гораздо более широкий набор устройств. Код для Android корректируется и изменяется производителями этих устройств, чтобы они могли создавать более адекватные поддерживаемые решения для конкретных потребностей своих устройств. Google не может гарантировать, что код какого-либо конкретного устройства или весь его код будет каким-либо образом одинаковым. Это создает дополнительные ограничения, но создает и другие потрясающие свободы.

Chrome и Safari также используют webkit. Многих разработчиков беспокоят даже незначительные различия в том, как они оба используют его по-разному.

Об этом говорилось выше.

Is there a way to really address android’s problem, on a lower level?

Again, this is not android’s problem. If you are having a specific issue with the current implementation, you are free to code a separate solution. Further, web content was made to be viewed in a browser and that is provided. The best practice is to define what you need it to do specifically. Do you need the WebView to view any web page? Or just yours? What are your issues with its current rendering? Do you require client-side scripting?

Every tool is made with particular needs in mind. This is even true of the so-called “better” listviews. Those views were made to address specific needs that might be needed by more than one developer. In the world of programming (especially OOP), there is really very little such thing as comprehensive. If there was, we wouldn’t have to extend our objects in the first place. When looking at such a tool, consider what need it was specifically trying to address.

Has anyone made a more comprehensive web object for Android?

Yes. They are normally manifested in the other dedicated browsers that you can download to your device. As to whether or not they are accessible: personally, I have no idea and am not inclined to look.

The issue you have raised was really not specific enough to provide a true solution. It also seemed to take an antagonistic stance, due to poor word choice. If your issue was not resolved by either CommonsWare’s answer or my own, consider editing your question to add our more specific needs. That said, I hope both of our answers were able to provide some insight for you.

Hope this helps,

есть ли лучший webview для android? В собственных документах Google упоминается, что не следует полагаться на объект webview.

но для использования webkit кажется странным, что он настолько ограничен, по сравнению с другими браузерами webkit, используемыми на мобильных устройствах с сопоставимым оборудованием.

Это очевидно в мобильных реализациях jquery или аналогично реализациям Sencha touch для веб-приложений. Версия Android страдает замедлениями, проблемами рендеринга и плохим пользовательским опытом, где другие мобильные устройства – например, iphone-будут работать нормально. они оба используют webkit. и вне приложения фактический браузер android работает просто отлично.

есть ли способ действительно решить проблему android на более низком уровне? Кто-нибудь сделал более полный веб-объект для Android?

Спасибо за информацию

Я боюсь, что оба ответа (Commonsware и Fuzzical Logic) избегают реальности.

реальность из нашего двухлетнего опыта разработки веб-приложения HTML5 и более позднего приложения PhoneGap (гибрид с использованием веб-просмотра) для iOS, Android и Windows Phone:

отлично работает на iOS (как Safari, так и в WebView), работает разумно в Chrome на Android, т. е. на Windows 8 и IE WebView (у всех были проблемы, но их можно решить), но остается кошмар в Android Объект WebView.

:/>  задачу наметить - Перевод на английский - примеры русский | Reverso Context

на WebView в Android был сломан и по-прежнему сломан после обновления KitKat с заменой хрома. Он просто падает на обычный HTML5 (даже не добираясь до проблем Javascript). Вы найдете много людей в сети наблюдать подобные вещи.

такие вещи, как” поддержка Flash”, не имеют ничего общего с этим – Flash это не HTML5. Хочет ли производитель поддерживать определенный плагин (или, в это дело, целое промежуточное ПО) зависит от него. Я всегда понимал решение Apple, и в WebView это имеет еще меньше смысла.

Итак, проблема заключается в проблеме Android/Google, поскольку сторонники этой платформы хотят ее отрицать. Это особенно неловко, конечно, для компании, которая всегда кричала “открыть”, а затем не может поставить рабочий компонент браузера HTML5 после стольких лет.

но ваш вопрос был, если есть какой-либо другой WebView от кто-нибудь еще:

поймите, что я согласен с Commonswares и почти все, что указано в предоставленном ответе. Однако вопрос, похоже, подразумевает, что есть проблема, которую вы имеете (либо в понимании, либо в концепции) и хотите найти/разработать более адекватное решение для своих потребностей.

решение вопроса и ответы, которые вы, вероятно, получите:

Я верю Commonswares действительный критика связана с тем, что вы не заявляете почему или как предоставленный объект платформы неудовлетворителен, и вы не заявляете почему или , когда вы считаете, что Google сказал, что указанный объект ненадежен. Если вы хотите получить лучшую обратную связь, отредактируйте свой вопрос соответствующим образом, чтобы сообщить об этом, и у вас будет меньше проблем.

далее, как объяснено ниже, вы подразумеваете, что это проблема с платформой Android (на самом деле, почти непосредственно заявить об этом), и это не так. Существует слишком много соображений в широкой области просмотра веб-страниц, чтобы полностью решить простой элемент управления, такой как WebView. Microsoft столкнулась с той же проблемой с их встроенным IE COM-объектом еще в 90-х годах. Это большая проблема, которая не принадлежит ни к одной группе.

обращаясь к подразумеваемому вопросу:

В WebView object-это в основном мини-браузер, использующий очень гибкий код рендеринга, основанный на совершенно разных параметрах от выделенного браузера. Это включает все: от простой визуализации, даже interactible (СП?) объекты, такие как ссылки, которые будет использовать такая страница. Этот процесс очень трудно (за неимением лучшего слова), чтобы уменьшить таким образом, что возможность единых для встраивания в различные приложения, которые могут иметь различную структуру макета и параметры каждый раз. Черт возьми, такие движки трудно программировать равномерно даже с выделенным механизмом просмотра, что приводит к большим различиям между текущими основными браузерами в целом.

таким образом, WebView не предназначен для обеспечения полной функциональности выделенного браузера, но наиболее полезные аспекты отображения веб-контента в приложении, которое часто делает другие вещи. Это особенно верно, когда вы рассматриваете последствия для безопасности добавления Функциональность Javascript или клиентская обработка, доставленная из указанного содержимого. Добавьте к этому, каждое устройство имеет потенциал иметь другой механизм рендеринга или другую версию одного и того же механизма рендеринга, так же, как разные устройства имеют разные возможности с использованием SQLite (т. е. поддержка внешнего ключа).

таким образом, WebView предоставляется как решение для отображения веб-контента без гарантии его расширяемости или удобства использования если вы его используете чисто для просмотра (и, возможно, реагирования) доверенного и соответствующего стандартам HTML-кода. Как только вы попадете в реальную практику реальных веб-сайтов, вы поймете, что HTML был сделан так гибко именно потому, что каждый стандарт придерживался на разных уровнях разными разработчиками. Поскольку основным кредо HTML является то, что он работает (показывает контент), несмотря на потенциальные неоднозначности, проблема разработки полностью всеобъемлющего объекта, встроенного в приложение ориентированное решение становится еще сложнее разработать.

. где другие мобильные устройства – например, iphone-будут работать нормально

Это зависит от содержания. Кроме того, философия разработки для устройств Apple полностью отличается от Android. Apple имеет только несколько устройств, поэтому они могут гарантировать единообразие на своих устройствах и выбирать, какие и когда добавлять дополнительные функции. Например, у первого iPhone не было родного поддержка Flash. Основываясь на последствиях вашего вопроса, я считаю, что это не “комплексный” тест.

Android, напротив, имеет гораздо более широкий репертуар устройств. Код для Android настраивается и изменяется производителями этих устройств, чтобы позволить им сделать более адекватные поддерживаемые решения для их конкретных потребностей устройств. Google не может гарантировать, что любое данное устройство сохранит любой или весь свой код одинаковым. Это создает дополнительные ограничения но создает другие очень удивительные свободы.

Chrome и Safari также используют webkit. Многие разработчики страдали от даже мельчайших различий в том, как они оба используют его по-разному.

. вне приложения фактический браузер android работает просто отлично.

это рассматривается выше.

есть ли способ, чтобы действительно решить проблема android, на более низком уровне?

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

каждый инструмент сделан с определенными потребностями в виду. Это относится даже к так называемым “лучшим” listviews. Эти мнения были высказаны для удовлетворения конкретных потребностей, которые могут потребоваться более чем одному разработчику. В мире программирования (особенно ООП) действительно очень мало таких вещей, как всеобъемлющий. Если бы это было так, нам не пришлось бы расширять наши объекты в первую очередь. Рассматривая такой инструмент, рассмотрим какую именно нужду он пытался решить.

Да. Они обычно проявляются в других специализированных браузерах, которые вы можете загрузить на свое устройство. Что касается того, доступны они или нет: лично я понятия не имею и не склонен смотреть.

вопрос, который вы подняли, действительно не был достаточно конкретным, чтобы предоставить верное решение. Он также, казалось, занял антагонистическую позицию из-за плохого выбора слов. Если ваша проблема не была решена ни ответом CommonsWare, ни моим собственным, рассмотрите возможность редактирования вашего вопроса, чтобы добавить наши более конкретные потребности. Тем не менее, я надеюсь, что оба наших ответа смогли дать вам некоторое представление.

надеюсь, это поможет,

Я удивлен, что никто не упомянул CocoonJS.

Он имеет реимплементацию стандартного WebView (Webview+); упакованный Webview, поэтому ваше приложение будет работать последовательно на разных устройствах (хотя и ограничено Android 4+ и iOS 8+).

CocoonJS не кажется хорошим решением на уровне производства из-за ограниченной поддержки ОС, но, возможно, это будет в будущем.

есть еще переход. Он работает для Android 4+ и Tizen.

Если под “webview” вы подразумеваете встраиваемый движок веб-рендеринга, вероятно, нет, так как написание таких движков жесткий. Вы можете увидеть, доступен ли он в качестве ответвления Firefox Mobile. Или вы можете сделать свой собственный порт WebKit для Android, используя AOSP edition в качестве отправной точки. Отмечать что оба, вероятно, значительно увеличат размер вашего приложения.

собственные документы Google упоминают, что не следует полагаться на объект webview.

Это будет зависеть от определения “более всеобъемлющего веб-объекта”. Примечательно, что вы забыли предоставить какое-либо определение для этой фразы.

Эта статья откроет небольшой цикл из двух частей, посвященных интересному проекту под названием Crosswalk Project. В них я затрону вопросы интеграции Crosswalk в Android приложение и использовании его как замену системного WebView в обычном приложении.

Под «обычным» я подразумеваю классический проект на Java с использованием Android SDK, в противовес HTML5 приложениям и нативному C++ коду. А т.к. Crosswalk в основном используется как runtime запуска HTML5 приложений, то, чтобы не путаться в терминах, буду называть этот проект обычным.

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

Что же такое Crosswalk?

Crosswalk Project — это runtime построенный на технологиях open source для HTML приложений. Основой для Crosswalk Project служит Google Chromium. Crosswalk Project также и сам является open source проектом и распространяется под BSD License.

Crosswalk расширяет существующие возможности web платформы, ниже небольшой список особенностей, отмеченных создателями.

Crosswalk может использоваться как замена системного WebView в обычном Android проекте. Официально Crosswalk поддерживает все версии Android начиная с 4.0 и выше. В этом случае мы получаем самостоятельный браузер, который позволит нам не зависеть от версии Android и ограничений реализации WebView в этой версии системы.

Компоненты Crosswalk.

Создатели Crosswalk не предполагали своей целью полную совместимость с системным WebView. Однако, в общем мы имеем достаточно близкую копию интерфейсов системного браузера до версии Android 4.4, с которой системный WebView также начал базироваться на Chromium. Поэтому, и к большому сожалению, в Crosswalk вы не найдете очень удобного и доступного с Android API 21 вызова:

С версии Crosswalk 10 авторы решили еще дальше отойти от стандартных интерфейсов и добавили некоторые дополнительные вызовы в свой публичный API. Javadoc для различных версий Crosswalk вы можете найти на официальном сайте, ниже я рассмотрю несколько важных моментов для 14ой версии, последней релизной версии на данный момент.

Интеграция Crosswalk в проект.

Исходный код с интегрированным XWalkView и описанными решениями доступен в GitHub.

В целом интеграция Crosswalk достаточно проста, если вам необходимо интегрировать Crosswalk в проект разрабатываемый с помощью Eclipse/ADT, то есть отличный официальный гайд по этому поводу. Здесь мы рассмотрим интеграцию в проект с использованием Android Studio. По сути она заключается в подключении библиотеки Crosswalk, все остальные операции не сильно отличаются от использования стандартного WebView.

:/>  Командная строка (CMD): самые нужные команды для просмотра характеристик ПК, работы с сетью, дисками, восстановления ОС Windows

1. Необходимо создать новый проект в Android Studio. Я, для примера, создал проект с пустой Activity и поддержкой начиная с API 14.

2. Подключить репозиторий со сборками Crosswalk и выбрать саму сборку проекта. Я использую последнюю доступную с версией 14.43.343.17:

3. Добавить в AndroidManifest.xml разрешения для использования сети и т.д.:

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

4. Добавить XWalkView в layout там, где вы хотите его использовать. Простой пример:

5. Для загрузки url в коде вашей Activity необходимо добавить следующие вызовы:

6. Аналогично системному WebView, можно подключить классы для получения оповещений от XWalkView:

Некоторые нюансы реализации.

Более сложные моменты и их возможные решения я описал во второй статье, чтобы не углубляться при быстром ознакомлении.

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

Включение в настройках (Android 5. 0-7. 0 и Android 10+)

В «зелёном роботе» версий с пятой по седьмую, а также в новейших релизах, соответствующих номерам 10+, рассматриваемое ПО присутствует как выделенный компонент, который пользователи могут включать или выключать самостоятельно.

Отключение Chrome (Android 7. 1-9

В седьмой, восьмой и девятой версиях Андроида функции Вебвью на себя взял Гугл Хром – веб-приложения в этих вариантах ОС отображаются с помощью его движка. Активировать первый можно отключением последнего, в 9.0 это делается следующим образом:

Что делать, если Android System WebView не включается

Иногда приведённые выше инструкции не работают, и рассматриваемый компонент просто отказывается запускаться. Это возникает по нескольким причинам, определить которые и устранить можно, выполнив следующие шаги:

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

Все приведенные операций выше не помогли

зашел в настройки и почистил кэш у приложения Хром. Ошибка перестала вылезать

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

О пресловутом приложении Android System WebView, проблемах и попытках их решения.

Каждый пользователь Android-смартфона видит уведомление об обновлении приложения Android System WebView так же часто, как обновление безопасности Android. И тому есть причины, но прежде давайте разберемся, что это за штука такая и что она делает.

Каким бы браузером мы ни пользовались, визуально его можно разделить на показываемый контент и пользовательский интерфейс. Каким образом показывать контент при переходе по ссылке, его разметка, допустимые для перехода ссылки и так далее — это забота движка браузера. Интерфейс же представляет из себя элементы управления.

Неважно, какой это браузер, Safari, Internet Explorer, Chrome, Firefox или Edge, производителю для изменения элементов управления необходимо обновить локальное приложение. Для изменения отображения (разметки) контента достаточно обновить только компонент WebView. Программисты называют этот компонент встраиваемым браузером, который нативное приложение может использовать для отображения web-контента, но это слишком скучно и непонятно звучит. Часть движка браузера – это звучит гораздо понятнее и логичнее ввиду отсутствия популярных браузеров, которые не используют WebView.

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

Да, некоторые сторонние приложения используют собственный рекламный движок. Чаще всего к ним относятся проекты с миллионами пользователей онлайн каждый день, а также множество приложений из Поднебесной, но большинство разработчиков не готовы вкладываться в отдельный рекламный сервер и пользуются стоковым от Google. В последнем случае пользователь видит целевую рекламу, которая перекликается с его запросами в браузере и этим нагнетает грусть, чувство, которое можно описать фразой «замуровали, демоны».

Проблемы Android System WebView

Как и с любым системным приложением Android, основные проблемы происходят после очередного обновления. Это выглядит как полный отказ или неправильный старт Android System WebView, а конкретнее – браузер либо сразу «вылетает», либо начинает дергаться, как перебравший текилы дедушка на вечеринке би-боев.

Решение

Из множества решений, которые могут встретиться на просторах интернета, реально работают только четыре. Стандартное, такое же, как для любых других приложений: зайти в настройки смартфона, удалить все обновления Android System WebView. Сразу после этого перезагрузить смартфон и установить обновления заново.

Второе посложнее и потребует навыков работы с ADB, попросите друга, если не справитесь сами. В любом случае все, что вы делаете, вы делаете на свой страх и риск. Вот краткий порядок действий:

Четвертый способ знают все и он не требует технических навыков. Это сброс смартфона до заводских настроек, со всеми вытекающими последствиями. Применять его следует только если не помогли первые три.

Почему столько внимания?

Мысль написать о проблеме Android System WebView возникла после того, как на глаза стал попадаться один и тот же текст, перепечатываемый из издания в здание. И если к стандартному способу решения проблемы вопросов не возникло, то со вторым просто беда – он просто был не дописан до конца в части отладки по ADB. Все лицемерие раскрывается, когда смотришь на источники – это многочисленные сайты, которые предлагают ремонт Android-смартфонов. Заблудившаяся в тумане бесполезной информации несчастная пользовательская душа в конце концов отнесет свои кровные деньги нечистым на руку дельцам. Разве может нормальный человек стерпеть такое?

Выскажите свое мнение, стоит ли овчинка выделки? Уместны ли приложения Google в Android-смартфонах? И что вы думаете о бесполезных руководствах по «ремонту», которых в Рунете развелось как грязи?

Non HTML/CSS/JS Frameworks

Chances are, HTML/CSS/JS is not the right choice for your app, especially
if it’s a tool (designed to do one thing). Using HTML/CSS/JS as your frontend
can be justified when your frontend is bigger than your backend.

WebView Compatible Libraries

Вы можете отключить системный веб-просмотр Android без каких-либо проблем, если у вас Android 7, 8 или 9. В этих версиях Android функциональность WebView встроена непосредственно в Chrome, поэтому приложение WebView не так важно. Если у вас Android 10 или новее, то вам не следует отключать WebView, если у вас нет веской причины.

Вот как отключить веб-просмотр системы Android:

Watching

Android System WebView — это системное приложение, а это значит, что вы не можете его удалить. Вы можете удалить обновления через Google Play, но Android фактически не позволит вам удалить само приложение. Вы можете принудительно остановить его, если подозреваете, что он работает неправильно, и вы также можете отключить его, но это вызовет проблемы с другими приложениями, если вы используете Android 10 или новее.

Хотя вы не можете удалить сам WebView, вы можете удалить обновления для приложения. Однако это может создать дыры в безопасности, поэтому удаляйте обновления WebView только в том случае, если у вас есть веская причина.

Вот как удалить обновления WebView для системы Android:

Don’t Make a Desktop App

A good portion of WebView apps could have been much better as web apps or browser
extensions. Please consider this as you research what library is best for you.

WebView doesn’t officially support android, but it’s not too hard to get a
webview up and running there.
– https://github.com/petabyt/ndkhellohtml
– https://github.com/petabyt/gowebview

Как работает WebView системы Android?

Android System WebView — это компонент ОС Android, который позволяет приложениям получать доступ к контенту из Интернета и отображать его без открытия отдельного веб-браузера. Когда разработчик приложения хочет отобразить контент из Интернета, например веб-сайт, у него есть три варианта: отобразить контент непосредственно в приложении через WebView, открыть контент в Chrome с помощью функции пользовательских вкладок или запустить веб-браузер, например Chrome, и загрузить контент туда.

Преимущество WebView перед другими вариантами заключается в том, что он, по сути, предоставляет разработчику инструменты для установки урезанной версии Chromium прямо в их приложении, обеспечивая визуальную интеграцию и бесперебойную работу. Недостатком является то, что он не обладает всеми функциями реального браузера, такого как Chrome, и не предоставляет доступ к таким вещам, как данные для входа в систему и файлы cookie для веб-сайтов, которые вы ранее посещали в Chrome.

WebView обычно используется для отображения веб-страниц внутри приложений, таких как политики конфиденциальности, страницы входа в систему и веб-приложения. WebView позволяет приложению отображать этот контент без использования браузера, что делает пользовательский интерфейс более удобным.

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

Chrome/Chromium Rendering Backend

Using Chrome/Chromium as a web backend is very useful, since most people have it
installed, and know how to install it.

Оставьте комментарий