Устанавливаете на телефон и радуетесь. Радость начинает постепенно проходить с каждой минутой использования такого приложения, ведь очень скоро вы обнаруживаете, что клавиатура, при вводе в текстовые поля перекрывает их, почему-то должным образом не работает геолокация. Если на сайте есть возможность загрузки файлов, то файлы не загружаются, и уж тем более не скачиваются с сайта. И ещё много всяких мелких проблем - не работает webRTC видео, при нажатии аппаратной кнопки назад приложение закрывается, а не переходит назад по ссылке на сайте, да и вообще в обещанные роликом 10 минут вы не уложились.
Для решения всех этих проблем существуют разные сервисы, которые возьмут на себя все эти заботы при конвертации сайта в мобильное приложение. Один из таких мы сегодня рассмотрим.
На мой скромный взгляд, лучшим среди сервисов для создания отлаженных webview является https://siteconverter.businessapp.trade/
Созданные при его помощи приложения, выходят далеко за рамки привычных webview, а цена значительно ниже.
Вот основные функции, которые поддерживают получающиеся приложения:
- 1) Runtime Permission Request - здесь всё как у настоящих приложений, которые имеют доступ ОС Android. Т.е. если у вас сайт типа чат рулетки — значит видео будет работать.
- 2) Push уведомления. Куда без них. Ведь основной смысл в создании вебвью как раз в рассылке уведомлений
- 3) Deeplink. Если вы решите запустить рекламу на ваше приложение, то всегда сможете открывать нужный экран сразу или нужный URL сайта.
- 4) LSU –last save url open. Пользователь приложения, при повторном открытии прило
- 5) Нативные меню. Что бы придать вид настоящего приложения, необходимо сделать настоящие нативные менюшки.
- 6) Различный список нативных модулей, которые можно интегрировать в приложение повысят прохождение модерации в google play. Не совсем понятно откуда взялось поверье, что гугл не любит простые вебвью, но, если вы не любитель рисковать и терять время - можете вставить в ваше приложение пару дополнительных модулей. Таким образом приложение автоматически перестанет попадать под обычные webview.
- 7) No-internet модуль. Так как основная задача webview отображать сайт, то при отсутствии интернета произойдёт то, что происходит и в браузере - появится надпись о том, что невозможно загрузить страницу. Тут-то все и поймут, что у вас вебвью. Дабы не допустить такого, в приложении встроена проверка на доступность сети. И если интернета нет контейнер с webview скрывается и появляется заглушка, которая доступна offline.
Самое главное к данному приложению есть панель управления! Для чего нужна панель управления webview приложением? Если не брать в расчёт ролики на ютубе, то окажется, что вебвью это не так уж и просто.
Например, BottomNavigation, которое свяжет нижнее меню со страницами сайта, можно отредактировать. Но, если у вас нет такой панели управления, то вам придётся перекомпилировать приложение, а затем выложить обновление на google play. Конечно, это потребует от вас времени и лишних телодвижений.
Что бы избавить вас от таких трудностей и разработана данная админ-панель. Вы заходите в настройки, прописываете нужные пункты меню, иконки и ссылки. Всё. В приложении автоматически появляется новое меню.
Далее, стили вашего сайта могут измениться. Если сегодня с вашим сайтом отлично сочетался синий StatusBar, то, после изменений на сайте, может потребоваться изменить стиль в приложении. И тут опять на помощь придёт панель управления. Заходите в раздел стилей, выставляете цвет, который подходит вашему сайту, и он тут же появляется в приложении.
Теперь о грустном.WebView контейнер — ЭТО НЕ БРАУЗЕР. Это надо понимать. Если на вашем сайте в браузере Safari под MacOS один вид видеоплеера, то в вебвью он может быть другим. Так же, стоит отметить особенности Web Push. В приложении не работают вебпуши. Нато они и веб, чтобы работать в браузере. Точно так же, как они не работают в NW.JS или Electron, или в Cordova. Это не значит, что пушей не будет. Это означает что рассылку надо вести через панель в Firebase console или OneSignal.
Если у вас сайт, который рассылает “индивидуальные уведомления”, в зависимости от событий на нём, то понятное дело что они не сработают. Для того чтобы такие пуши работали, нужно связать БД пользователей с приложением и написать backend сайта, который будет рассылать их через FCM для Android. Но, это особый случай. Если у вас подобный сайт со сложной системой, то скорее всего вам потребуется дополнительная доработка, которая не входит в рамки данной статьи.