Кроссплатформенный мобильный API - Ищу рекомендации
Так что, да, это, вероятно, 1000-й вопрос по этому вопросу. Однако мой вопрос несколько отличается от других, которые задавались по этому поводу, поэтому, пожалуйста, потерпите меня:
Я собираюсь разработать одно мобильное приложение для трех / четырех популярных и / или растущих мобильных платформ (Iphone, Android, WinPhone7, RIM). Это приложение является расширением существующей системы SaaS, которую в настоящее время предлагает мой стартап. Это мобильное приложение обеспечит быстрый и простой способ просмотра актуальной информации о состоянии, диаграммах и отчетах для данных, которые собирает SaaS-приложение. Подключение к интернету требуется 100%. Нет ввода данных, кроме имени пользователя / пароля. Приложение очень простое с 5-6 "страницами".
На первом этапе все, что требуется для поддержки, - это войти в систему пользователя, увидеть текущее состояние его данных, хранящихся в облаке, получить доступ к нескольким отчетам в реальном времени.
На втором этапе я хотел бы иметь возможность предлагать push-уведомления об определенных ключевых событиях с моих серверов в облаке
Мои цели:
1) Внутренняя обработка, которая генерирует данные для отчетов, уже написана в ASP.NET MVC2. Я хочу использовать это снова. Он может быть выставлен как услуга WCF или опубликован на мобильном сайте
2) Я хотел бы иметь возможность развертывать патчи быстрее, чем через официальные магазины приложений / торговые площадки.
3) Я не могу позволить себе тратить много ресурсов на три-четыре проприетарные платформы для приложения, которое является вспомогательным для вертикальной цели бизнеса. Я хочу разработать его один раз для всех 3-4 платформ.
4) У меня нет доступа, и я не хочу покупать Macbook
5) Я хочу развернуть торговую площадку приложений для конкретного поставщика
6) Я хотел бы держаться подальше от проприетарных языков / фреймворков / блокировок
Похоже, мне нужна оболочка для мобильного сайта, которую можно упаковать в приложение. Существуют ли продукты, которые могут сделать это НАСТОЯЩИМ для меня? Будет ли это препятствовать выполнению push-уведомлений на этапе 2? Может ли кто-нибудь порекомендовать "оболочечный" продукт, который бы обернул вокруг веб-сайта, а также библиотеку Javascript, которая выглядела бы лучше всего на всех 4 платформах. Я видел такие имена, как Jqtouch, Jquery Mobile и т. Д., Но не уверен, какие из них лучше для того, что мне нужно.
Нужен ли мне PhoneGap? Я не уверен на 100% здесь. Может ли PhoneGap использовать только онлайн-страницы html/javascript для перевода на собственный код или файлы html/javascript должны распространяться вместе с приложением? Я бы предпочел, чтобы сам веб-сайт полностью управлял пользовательским интерфейсом, так как я могу продолжать изменять сайт без различных процессов утверждения версий в магазинах поставщиков.
Спасибо за помощь
1 ответ
Я не думаю, что вам нужен PhoneGap после прочтения о целях вашего проекта. Вы можете рассмотреть веб-приложение вместо нативного, если вы 1) не хотите покупать Mac (требуется для iOS, даже если вы можете скомпилировать его в облаке: https://build.phonegap.com/) и 2) хотите применять и развертывать обновления в любое время, не проходя через эти независимые от платформы торговые площадки и процессы утверждения.
jQuery Mobile был бы отличным выбором, в настоящее время (на данный момент) в Alpha 3, но очень стабильным, и вы можете развернуть свою систему на любой из этих платформ. Обратите внимание, что если вы сосредоточите свои усилия в веб-приложении, вы не сможете настроить таргетинг на второй этап, который вы упомянули: Push-уведомления.
Если вы решите перейти на Native, то службы Push-уведомлений могут быть развернуты в вашем проекте Phonegap после того, как вы настроите надлежащие веб-службы и сертификаты (посмотрите @ http://easyapns.com/);
... и одно быстрое замечание: идея телефонного промежутка заключается в том, что все ресурсы (html, js, images и т. д.) должны распределяться локально внутри приложения, а затем получать онлайн-данные (например, отчеты и т. д.) с использованием JSON из другого веб-сервиса, и это еще одна легкая задача для выполнения. Phonegap НЕ компилирует ваши HTML-файлы в собственный код (ObjectiveC или Java), он просто загружает ваше веб-приложение в компонент UIWebKit во время выполнения (в случае приложения для iOS)
Другой альтернативой может быть использование Titanium - http://www.appcelerator.com/ но этот подход более ориентирован на javascript, и ваше конечное приложение выглядит гораздо более естественным. (здесь не HTML, так что я думаю, что это недостаток для вас)
Надеюсь, поможет:)