RhoMobile Suite против Titanium против Xamarin против PhoneGap против платформы Telerik против Codename One

Я, как и многие другие, собираюсь начать разработку мобильных приложений. Я знаком с HTML5, CSS3, JavaScript, PHP, Ruby,.NET, но не с Java или Objective-C. Честно говоря, я вряд ли стану гуру мобильных разработчиков, и приложения, которые я буду разрабатывать, вряд ли будут подталкивать пределы Hybrid до такой степени, что мне все равно придется заниматься родными. Поэтому задача для меня - получить достаточные знания, чтобы уверенно привести себя в соответствие с одной из основных платформ гибридных разработок - зная, что я принял правильное решение в соответствии с моими требованиями.

Я читал подобные сообщения о SO и изучал популярные в настоящее время решения для разработки мобильных гибридных приложений, в том числе:

Xamarin титан Rhomobile PhoneGap Платформа Telerik

Я пришел к выводу, что решение, по которому нужно идти, не так просто. На самом деле, я не ближе к принятию решения, чем был, когда начал. Поэтому я обращаюсь к сообществу, чтобы рекомендовать варианты, основанные на моих конкретных критериях (которые, по моему мнению, отражают большинство самозанятых разработчиков, работающих на небольшой поэтапной основе, а не на более крупной корпоративной команде разработчиков с возможностью финансирования лицензии расходы и т.д.)

Приложениям, которые я создам, понадобятся версии для Android и iPhone и должны иметь доступ к основным функциям основного телефона, включая: камеру, акселерометр, геолокацию, оповещение, локальное хранилище, G-сенсор и т.д., но не намного больше.

Итак, этот пост не является субъективным "Какой из них лучше?", вместо этого я ищу рекомендации в соответствии со следующими требованиями:

  • Бесплатно (желательно), но по крайней мере доступный для маленького человека: 1a. Доступная ежемесячная подписка (если нужно) 1б. Никаких скрытых лицензионных сборов при распространении моих приложений - это большой вопрос.

  • Dev-платформа должна устанавливаться на Windows и Mac (так что я могу самостоятельно строить для платформы) 2а. В качестве альтернативы, любые интегрированные онлайн-сервисы должны быть доступными.

  • Среда должна быть проста в установке и настройке (есть ли такое решение? Почти все, что я пробовал, похоже, имеет какую-то проблему при поиске файлов ссылок, версий, запуска эмуляторов и т.д.)

    /li >

Как разработчик .NET MVC, Xamarin кажется очевидным выбором, но стартер не может ссылаться на сторонние библиотеки - я думаю, мне это понадобится - и едва доступная "Indie" составляет 299 долларов США в год на платформу, и я не что он предложит всю необходимую функциональность. Версия Enterprise на уровне 1899 долл. США в год на платформу выходит за рамки бюджета.

Rhomobile Suite с его MVC-Ruby-подходом кажется мне подходящим, но документация требует внимания (устарела), и, похоже, есть огромная двусмысленность вокруг лицензирования. Я не могу найти окончательного ответа, и они не ответили на простой запрос. Я нашел это: "Использование RhoElements требует лицензионного ключа, чтобы использовать только не-корпоративные функции (например, приложение Rhodes), просто удалите app_type: rhoelements из вашего build.yml". - Конечно, мне, вероятно, понадобится RhoElements! Если посмотреть на лицензирование приложений (на сайте docs.rhomobile.com), вы можете получить их от Motorola Solutions (или кучи других реселлеров), но, как правило, я не могу найти цену. Это касается меня - я могу предвидеть, что меня поражают комиссией в размере 10 000 долларов США, когда я распространяю их в магазинах приложений.

Титан также имеет двусмысленность в отношении лицензирования. Некоторые утверждают, что их преследовали за лицензии в размере 5000 долларов британскими реселлерами, другие считают, что это просто неправильно, и никаких лицензионных платежей нет. Опять же, не знаю...

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

Платформа Telerik кажется хорошей на первый взгляд, но я сомневаюсь, что предложение "разработчика" по текущей цене 39 долларов в месяц (продается как "идеальное место для воблеров и любителей" ) достаточно, поэтому я бы посмотрел на обязательство в размере 79 долларов в месяц, выплачиваемое на один год вперед - ой! Я также не уверен, покрывает ли эта стоимость все лицензирование полных приложений (я бы так надеялся).

Как один из моих ключевых критериев - легкость установки, настройки и сборки, я склоняюсь к Rhomobile или Telerik в зависимости от конечных затрат для меня как разработчика для создания и отправки этих приложений.

Все вещи, которые я рассматриваю, находятся на правильном пути или все еще очень неосведомлены?

Большое спасибо.

Ответ 1

Отказ от ответственности: я работаю для Motorola Solutions, которые выпускают RhoMobile Suite.

В комплект RhoMobile входит другой продукт:

  • RhoStudio: IDE на основе Eclipse
  • Rhodes Framework: бесплатная лицензия MIT для создания приложений B2C.
  • RhoElements Framework: лицензионная инфраструктура для B2B, построенная на основе родов, поддерживающая регистрацию данных, сканирование штрих-кода, поддержку Windows Mobile и Windows CE.
  • RhoConnect: инфраструктура синхронизации и интеграции (требуется лицензия)
  • RhoHub: хостинг RhoConnect и сервер сборки для Rhodes/RhoElements (нужна лицензия для коммерческого использования)
  • RhoGallery: магазин приложений для предприятий. (требуется лицензия для коммерческого использования).

Приложению, которое вы собираетесь создавать, требуется только API Rhodes. Вы можете найти в эту таблицу, для которой API требует лицензию RhoElements. Таким образом, вы можете создать свое приложение с помощью Rhodes, развернуть его на AppStore и PlayStore, не приобретая лицензию.

Вы можете найти некоторую поддержку с помощью бесплатного сообщества пользователей на Launchpad.

Что касается платной поддержки и лицензий RhoElements/RhoConnect/RhoHub/RhoGalley, это изменится в течение лета, чтобы быть выровненным с моделью подписки, используемой другой кросс-платформенной платформой на рынке.

Ответ 2

В 2009 году я использовал телефонную рассылку для создания кучи кросс-платформенных приложений, а затем переключился на бесплатный Titanium SDK в 2010 году, который я использовал с тех пор во многих других проектах.

Я бегло взглянул на Xamarin (это выглядит довольно хорошо) и на других платформах, таких как React и т.д., но на самом деле может обеспечить только правильную обратную связь по телефону/титану.

Возможность иметь одну кодовую базу для iOS/Android действительно экономит мне много времени. Имея это в виду, я считаю, что преимущество кросс-платформенного решения очень эффективно для создания приложений.

Сделав много телефонных разговоров, я обнаружил, что поддерживать эти проекты было очень сложно, так как не было общего способа делать что-то, а также внешний вид и потребность требовали большого количества сантехники. Интерфейсы HTML и native также были очень неуклюжими.

Титан и особенно сплавы для титана решили для меня многие из этих проблем. Сплав немного похож на ранний разрез Ruby on Rails. Это делает структурирование графического интерфейса приложения намного более последовательным в разных проектах и ​​значительно улучшило мою производительность.

Я получаю примерно 80-90% повторного использования кода с помощью телефонной или титановой системы через iOS/Android, а затем должен писать около 10-20% пользовательского кода на платформу (например, интегрировать сторонние биллинговые библиотеки и push-уведомления и т.д.).

Тем не менее, я часто нахожу, что более сложные функции, такие как push-уведомления или пользовательские растяжки для обновления виджетов и т.д., обычно довольно сложны в кросс-платформенных технологиях, поскольку пока еще нет много хороших учебников и документации. Я поместил это на эту технологию, которая по-прежнему была довольно новой.

Мой опыт в том, что платформа Titanium была довольно хорошей, и их команда постоянно выпускает обновления и улучшения. Он может использовать их SDK, что является фактором в том, почему я выбираю его вместо платной подписки, такой как Telerik или Xamarin.

У них есть платная модель SAAS (через их родительскую сущность appcelerator), которую они нажимают на корпоративных клиентов, но это то, о чем я не беспокоился как инди-разработчик. то есть. вместо того, чтобы использовать их услугу push-уведомления, я просто сворачиваю свой собственный.

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

Если бы я строил новое приложение с нуля сегодня, я бы, вероятно, хорошо посмотрел на Titanium и Xamarin и, возможно, также React/Rubymotion/Telerik и т.д.

Было бы действительно здорово, если бы был независимый сайт сравнения или сообщение в блоге, в котором был показан код для создания подлинного кросс-платформенного приложения со слегка сложным интерфейсом на каждой из платформ.

Ответ 3

Рад слышать, что вы посмотрели на платформу Telerik. Я работаю в Telerik в нашей команде по управлению продуктами, и я с удовольствием отвечаю на любые подробные вопросы, которые вы имеете о подписке, либо здесь, либо по электронной почте в satrom AT Telerik.com. Не стесняйтесь бросить меня в любое время.

Тем не менее, подписка разработчика, на которую вы смотрели, действительно проверяет все поля (как я понимаю их, исходя из вашего списка выше) для вас, включая лицензирование. Приложения, которые вы разрабатываете на платформе Telerik, являются вашими приложениями, и никаких дополнительных сборов или расходов помимо самой подписки даже на уровне разработчиков. Несмотря на предложение веб-сайта о том, что эта подписка предназначена только для "tinkerer only", мне кажется, что это сработает для вас, и что нет необходимости тратить 40 долларов в месяц на подписку Pro.

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

Ответ 4

Отказ от ответственности: я работаю для Codename One.

Codename One позволяет вам встраивать приложение PhoneGap/Cordova, но оно не похоже на любую другую платформу. Например. в случае с Xamarin вы можете прочитать некоторые мои мысли в форуме Xamarin.

Codename One поддерживает собственные сборки ОС, позволяет писать код на Java и работать везде. Его открытый источник (в отличие от Xamarin, Telerik и т.д.) И имеет полезный/полезный свободный уровень, который позволяет вам оценивать его должным образом в сочетании с возможностью оплаты по месяцам для расширенных функций.

В отличие от некоторых других перечисленных вариантов вы можете использовать обычную Java IDE по вашему выбору, мы поддерживаем NetBeans, IntelliJ и Eclipse.

Codename Можно расширить с помощью собственного кода, и есть много сторонних библиотек, созданных специально для него.

Codename One - это зрелое решение, основанное на программном обеспечении с открытым исходным кодом, разработанном в Sun Microsystems с 2006 года. Он используется глобально разработчиками всех уровней от индивидуальных/любительских до 500 компаний.

Вы можете больше узнать о своей уникальной архитектуре в Как работает Codename One?