Я совершенно новичок в концепции разработки гибридных приложений. Я разработал веб-сайт без каких-либо фреймворков, таких как Angular или React, только основной код. Теперь я хочу разработать гибридное приложение из этого.
Но у меня возникли некоторые вопросы, и я нигде не мог найти ответы, поэтому решил задать их этому сообществу гениев.
1) Нужно ли использовать какой-либо фреймворк, такой как Angular, React или Vue, для разработки гибридного приложения? Или мы можем просто разработать гибридное приложение без таких фреймворков?
2) Важна ли архитектура MVC для разработки гибридного приложения, или мы можем преобразовать любой веб-сайт в гибридное приложение без архитектуры MVC?
3) когда гибридное приложение будет создано, какой код будет у него внутри оболочки приложения? Будет ли это мой HTML, CSS, Javascript и т. д., или весь мой код будет преобразован в Java для Android? Я имею в виду, что, если кто-то попытается перепроектировать мой apk? Какой код у него будет?
4) Что с безопасностью? Я имею в виду, что буду использовать подключения к базе данных, настройки, конфигурации и другие коды безопасности, которые не должны быть доступны никому, кто попытается перепроектировать мое приложение?
5) Что происходит, когда я обновляю свой веб-сайт на HTML и PHP? Придется ли мне перекомпилировать мое гибридное приложение, чтобы использовать новые функции моего веб-сайта?
6) Будет ли гибридное приложение также иметь мой PHP-код на стороне сервера? Я имею в виду, что у меня есть веб-сайт, разработанный с помощью PHP, так что же он будет делать с динамическими кодами PHP?
Я надеюсь, что эти вопросы имеют смысл для всех, кто плохо знаком с разработкой гибридных приложений. Благодарим вас заранее. Любая поддержка будет высоко оценена.
Как вы определяете «гибридное приложение»? Для меня «гибридное приложение» — это приложение, использующее более одного фреймворка. Этот вопрос слишком широк для этого сайта. Пожалуйста, отредактируйте вопрос, чтобы ограничить его конкретной проблемой с достаточной детализацией, чтобы найти адекватный ответ. Не задавайте сразу несколько разных вопросов.
@georgeawg Я не мог найти лучшего места, чем SO, для того, чтобы задавать такие вопросы, потому что это место, где проживает 98% разработчиков, и новички могут получить ответы на свои вопросы, а также учиться на других вопросах. Кроме того, есть и специалисты. Да, я говорю, что это форум по кодированию, а не плоская формулировка, но опять же, лучшего места, чем SO, я не нашел.






Вот мои 2 цента
Нет, ты не. Вы можете использовать простой html/js, а затем использовать Кордова, например, для упаковки приложения. Но я думаю, что гораздо проще, если вы используете фреймворк, если вам нужно переписать приложение с нуля (что, я думаю, будет вашим случаем, поскольку у вас, похоже, есть только классический веб-сайт PHP).
Вы можете преобразовать любой веб-сайт JS/HTML SPA в гибридное приложение, оно не обязательно должно быть MVC. Но вы не можете, если ваш сайт построен на PHP
Если вы используете гибридное приложение, оно будет использовать веб-просмотр устройства для отображения «локального» веб-сайта на основе JS/html. Я не знаю, что бы вы увидели при реверс-инжиниринге, но, возможно, весь ваш веб-сайт. Но в любом случае это было бы то же самое для классического веб-сайта SPA для настольных компьютеров.
Все подключения к БД и безопасные конфигурации должны храниться на стороне сервера, и вы используете API для доступа к своим данным.
Вы не можете создать гибридное приложение с использованием PHP. Гибридные приложения используют веб-просмотры для отображения контента, которые представляют собой упрощенные браузеры. Поэтому они могут работать только с локальными файлами html, js и css.
Само гибридное приложение должно состоять только из файлов html/css/js. Если вы используете PHP, это должно быть только для API на стороне сервера, а не для рендеринга представлений.
Гораздо проще использовать JS-фреймворк, но если приложение на Vanilla JS готово, думаю, в этом нет необходимости. Как правило, ему нужно только соединение между приложением и серверной частью, поэтому он может использовать Webview с HTTP-сервером (аналогично веб-странице) или использовать мост и внешнюю связь. Если это только Android Bridge, это лучшая идея, IMO.
@kris_IV Да, если приложение уже работает с vanilla JS, я согласен. Но из того, что говорит OP, у него есть классический веб-сайт PHP, поэтому, вероятно, ему придется его переписать. Я приспособил свой ответ, чтобы прояснить это, спасибо
Большое спасибо Дэвид. Это действительно помогло мне. Это сняло все мои опасения, и теперь у меня есть четкое понимание того, что такое гибридное приложение на самом деле и какую стратегию я должен применить.
@AbdulJabbarDumrai Рад, что смог помочь :)
Хотя это хорошие вопросы, это слишком широко для SO. Кроме того, любой ответ на некоторые из ваших вопросов является вопросом мнения. Для меня: нет фреймворка, я встраиваю в собственный (iOS и Android), который опубликован, в WebView, предоставляемый этими операционными системами. Те же серверы, что и мои веб-страницы. Я могу обновлять «веб-части» своих приложений без повторной публикации.