Ориентация на мобильные и настольные браузеры — ASP.NET MVC2 с MS Web Application Toolkit и Sencha Touch

Я создаю веб-приложение, которое я хотел бы:

  • Используйте собственные возможности пользовательского интерфейса мобильных устройств (например, iPhone, Windows Mobile, телефоны Android) при отображении на этих устройствах.
  • Хорошо отображается в браузерах, отличных от веб-инструментов (например, в настольных браузерах), таких как IE, Firefox, Opera.

Мои исследования до сих пор привели меня к использованию следующих технологий:

  • ASP.NET MVC 2 для моей среды разработки (написание разных представлений для каждого целевого устройства)
  • Sencha Touch (ранее называвшийся ExtJS) для рендеринга в браузере каждого отдельного мобильного устройства.
  • Набор инструментов Microsoft Web Application Toolkit для различения запрашивающего устройства/типа браузера

У меня нет опыта работы ни с одной из трех технологий (я много занимался разработкой на стороне сервера C#, WinForms и ASP.NET 2), поэтому я действительно основываю это решение на той информации, которую мне удалось найти. в сети.

Может ли кто-нибудь придумать причину, по которой эта комбинация технологий не сработает? Меня больше всего беспокоит то, как я могу встроить Sencha Touch в это решение вместе с MS Web App Toolkit. На самом деле, нужны ли они оба в данном случае.

Любые предложения или отзывы с благодарностью.

Пепел


person Ashby    schedule 18.07.2010    source источник


Ответы (4)


Если говорить из личного опыта, вам не нужно специально использовать определенный фреймворк. Я использую asp.net и простой JavaScript для разработки мобильных сайтов, и у меня не было особых проблем.

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

У меня не было опыта работы с MS Web App Toolkit, но похоже, что он требует поддержки JavaScript, и я сомневаюсь, что он будет работать на многих телефонах.

ЕСЛИ ваша основная цель мобильная, но вы хотите, чтобы настольные браузеры обращались к вашему сайту, вы можете просто изменить css, чтобы увеличить шрифты, чтобы они хорошо выглядели на ПК.

Мой девиз в мобильном дизайне — сделать его максимально простым.

person nLL    schedule 18.07.2010

Я думаю, что ASP.NET MVC и MobileWebApplicationToolkit — лучший выбор для разработки мобильных сайтов с использованием asp.net. .

Я бы предпочел WURFL, чем mdbf (используется в mobileWebAppToolKit), потому что последний релиз будет в августе.

Я не эксперт в JS на мобильных сайтах, я стараюсь избегать его для максимальной совместимости. Но я думаю, что Senda большая, более 200 КБ. Возможно, вы могли бы посмотреть xui-js или другой конкретный мобильный js-фреймворк. Во всяком случае, я думаю, что вы делаете хорошее решение.

person fravelgue    schedule 21.07.2010
comment
Привет и спасибо за отзыв. Я думаю, вы правы, предлагая посмотреть альтернативы Sencha, если это 200 КБ. Приятно слышать, что вы согласны с другими технологиями :) - person Ashby; 22.07.2010

Привет и спасибо за ваш отзыв. Я не уверен, что вы правильно поняли MS Web App Toolkit — это очень простой компонент, специально разработанный для работы с большим количеством различных мобильных устройств (я думаю, с 67): http://code.msdn.microsoft.com/WebAppToolkitMobile

Я просто понимаю, что это:

  • определяет, какой тип устройства / браузер сделал запрос, используя встроенную базу данных устройств

  • предоставляет компонент для использования в коде ASP.NET MVC 2, поэтому запрос направляется в подходящее представление для рендеринга на вызывающем устройстве.

Я собирался включить библиотеки Sencha Touch, чтобы я мог написать один вид (для каждой страницы), который можно было бы отображать на нескольких разных мобильных устройствах. Таким образом, когда Web App Toolkit определяет, что устройство с поддержкой Sencha Touch сделало запрос, вызов направляется в соответствующее представление, использующее библиотеки Sencha Touch. Для запросов от настольных браузеров вызов будет перенаправляться на другое представление, а для запросов со всех других устройств я мог бы либо снова использовать другое представление, либо, как вы говорите, внедрить упрощенную таблицу стилей с увеличенными шрифтами.

Надеюсь, это достаточно ясное объяснение!

person Ashby    schedule 19.07.2010
comment
У вас есть определенные целевые устройства или вы хотите, чтобы он был доступен как можно большему количеству устройств? - person nLL; 19.07.2010
comment
Как можно больше, но обязательно основные мобильные устройства и все основные настольные браузеры. - person Ashby; 19.07.2010

[Sencha person] Sencha Touch — это прикладная платформа, предназначенная только для устройств Android и iOS прямо сейчас, и которая будет поддерживать устройства RIM и Nokia, когда они выпустят высококачественные браузеры на базе webkit в конце этого/следующего года. , как и обещали.

У нас нет философии прогрессивного улучшения/деградации в Touch, поэтому здесь нет резервного поведения. Если вам абсолютно необходимо прогрессивное улучшение, вы должны проверить jQTouch, который является плагином jQuery. Но даже jQTouch требует разумной возможности javascript/CSS в браузере, а многие существующие телефоны просто не имеют этого. Например, большинство обычных веб-сайтов не отображаются должным образом в текущем браузере RIM.

Следовательно, если вы хотите 100% покрытие телефоном, вам придется упростить ваше «приложение» до того, что могут отображать даже WAP-телефоны с ограниченными возможностями HTML. Но на этом этапе это не будет большим приложением.

person Michael Mullany    schedule 01.08.2010
comment
Но именно поэтому я спросил о Sencha Touch В КОМБИНАЦИИ с другими технологиями. Комплект мобильных веб-приложений (с использованием WURFL или mdbf) определяет устройство/ОС, выполняющее запрос. Затем вы направляете запрос в соответствующее представление, и ASP.NET MVC делает это довольно просто. Таким образом, в случае браузера webkit с устройства Android / iOS вы можете использовать представление, созданное с помощью javascript / css Sencha Touch, в случае настольного браузера вы используете другое представление, в случае устройства Windows 7 вы снова используйте другой вид. - person Ashby; 02.08.2010