Подтвердить что ты не робот

Преобразование обычного сайта MVC для использования в телефонной запинке

У меня есть сайт, который работает с ASP.NET MVC и jQuery. Возможно ли изменить мой существующий проект без чрезмерной переделки, чтобы его можно было использовать в phonegap для создания приложений iphone/android?

4b9b3361

Ответ 1

Здесь подход: переместите вашу логику в проект MVC WebAPI (или другой проект REST/webservice), а затем преобразуйте сайт MVC в простой сайт html/javascript/css/image (мобильный сайт). Затем повторно настройте свой мобильный сайт, чтобы использовать Ajax/JS для запроса созданных вами служб WebAPI/Rest. После того как вы разделили свой код таким образом, вы можете затем упаковать мобильный сайт с помощью Phonegap. Я не уверен, сколько работы будет для вас или вашего проекта. Если вы используете много разметчиков Html или Razor в своих представлениях, это может быть слишком сложно.

Основным моментом моего предложения здесь является разделение вашего уровня пользовательского интерфейса мобильного телефона и уровня обработки бэкэнд, чтобы вы могли только упаковать слой Html5/UI/Javascript с помощью Phonegap и оставить обработку backend на вашем веб-сервере. Я не думаю, что мне нужно это объяснить, но, очевидно, приложение, упакованное с помощью Phonegap, не будет иметь среду MVC/.Net, доступную на мобильном устройстве, для визуализации представлений или выполнения контроллеров и т.д. Путем переноса пользовательского интерфейса на простой Html5 и Javascript вы можете использовать вызовы Ajax/Jquery/Javascript против вашего бэкэнд, которые вы, вероятно, захотите разместить в ASP.Net MVC WebAPI.

Edit: Угадайте, было какое-то замешательство в моем предложении. Я не говорю, что это единственный способ сделать это, но это то, с чем я знаком, поскольку наша команда создает наше приложение для настольных компьютеров и мобильных телефонов + phonegap + mvc4 + webapi + kendoui. Этот шаблон хорошо работает для нас, поэтому, возможно, он тоже сработает для вас или, по крайней мере, даст вам несколько идей о том, как структурировать ваше решение. Удачи!

Ответ 2

Я не уверен, но вам нужен сервер для компиляции ASP.NET? поэтому я не думаю, что это сработает для вас. Я думаю, вам нужно работать с AJAX, чтобы выполнить вашу работу ASP.NET и отделить ваш код ASP.NET и ваш HTML-jQuery, потому что Phonegap хочет файл index.html. Вы можете хранить файлы ASP.NET на жестком сервере

Ответ 3

Ответ на ваш вопрос действительно зависит от типа сайта, который вы пытаетесь преобразовать. Вы просто пытаетесь поместить собственную структуру вокруг HTML и получить свое приложение в магазине приложений?

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

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

Вам нужно приложение запускаться в отключенном состоянии?

Ответ 4

Phonegap - один из вариантов, если вы хотите настроить таргетинг на несколько мобильных платформ и, возможно, наиболее широко используются. Поскольку вы используете jQuery, jQueryMobile будет наименее используемым методом обучения. Усилия в основном связаны с интерфейсом пользовательского интерфейса и будут зависеть от того, сколько экранов вы хотите создать, чтобы предоставить подмножество или полный набор функций, которые у вас уже есть в веб-интерфейсе. Скорее всего, вам придется перепроектировать ваши экраны с помощью виджета jquery-mobile UI описанного здесь. Это также хороший способ показать его вашему клиенту первоначальный дизайн экрана с навигацией.

Ответ 5

jquery mobile отлично подходит для обучения и проектирования, но в браузере медленно замедляется работа телефона.

для этого вам понадобится более легкая структура.

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

взгляните на: http://docs.phonegap.com/en/3.0.0/cordova_inappbrowser_inappbrowser.md.html#InAppBrowser