Как инструменты веб-разработки упрощают поддержку нативных мобильных приложений
Веб-разработка, благодаря кросс-платформенности и универсальности, годится не только для того, чтобы создавать сайты и веб-приложения.
Иллюстрация: Merry Mary для Skillbox Media
При создании нативных мобильных приложений разработчики предпочитают придерживаться основного стека — например, при разработке для iOS использовать только Swift/Objective-C. Однако бывают ситуации, когда использование веб-технологий может помочь обойти ограничения, продиктованные самой природой нативных мобильных приложений: в них новые функции появляются только при обновлении.
Поэтому в нативные мобильные приложения часто добавляют возможность для отображения какого-либо содержимого в так называемых вебвью (WebView) — это похоже на браузер внутри приложения, который может выглядеть и не как обычный браузер. Пользователь при этом обычно даже не подозревает, что ему показывают веб-контент.
В вебвью можно отображать рекламу или сообщения пользователям, реализовывать другую функциональность, которая не была заложена на этапе выкладки приложения в стор. Именно эта гибкость — возможность показывать содержимое, не предусмотренное нативным кодом самого приложения, — побуждает использовать вебконтент посредством вебвью.
Чтобы по мере необходимости добавлять в своё приложение веб-контент, достаточно на этапе разработки заложить возможность открытия вебвью по команде с сервера. После этого вы сможете показывать пользователям что-то новое, даже не обновляя приложение в маркетплейсах.
Этот подход позволяет быстро проводить эксперименты с новым интерфейсом, делать опросы, уведомлять пользователя о каких-то важных событиях, показывать рекламу и многое другое.
Также бывают ситуации, когда в приложении один или несколько модулей полностью построены на вебвью. Этому может быть много причин: модуль пока экспериментальный, или модуль является внешним по отношению к основному приложению, или в команде не хватает нативных разработчиков.
Однако обычно по итогам экспериментов и в естественном процессе эволюции разработки функциональность, которая изначально была реализована на веб-технологиях, после проверки и обкатки переписывается на нативные технологии. Конечно, если на это хватает ресурсов.