2013-07-31 17 views
0

Я разрабатываю мобильное приложение для iOS и Android. Из-за ограничений времени и бюджета мы первоначально выбрали PhoneGap/Cordova в качестве платформы мобильных приложений, чтобы мы могли писать один раз и развертывать их на обеих платформах.Есть Android + PhoneGap/Кордова всегда головная боль?

Этот план отлично подходит для iOS, но мы обнаруживаем, что браузер/движок Android является своего рода куском мусора (чтобы его было приятно). Каждый раз, когда мы добавляем новую функцию, мы обнаруживаем еще одну вещь, которую браузер Android не поддерживает, или только частично поддерживает, или полностью поддерживает, но будет случайным образом терпеть неудачу время от времени и т. Д. Даже когда мы кодируем проблемы Android и заставить работать гладко, протестировать его на нескольких устройствах/версиях и развернуть новое приложение на рынке Android, мы сразу же начинаем получать электронные письма и отчеты от клиентов, которые не могут заставить приложение работать на своем устройстве. Мы их удаляем/переустанавливаем, перезагружаем свой телефон, чтобы очистить память и т. Д., И их устройство все еще постоянно терпит неудачу (и «сбой», я имею в виду, что он обычно просто зависает и/или не реагирует на сенсорный ввод - обычно не разбивается, или что-либо). Приложение отлично работает для большинства людей, но есть еще немало устройств, которые необъяснимо терпят неудачу.

Я не имею в виду, чтобы это было напыщенностью, я пытаюсь проанализировать, является ли путь Android + PhoneGap правильным путем для нас. В частности, я хотел бы узнать следующее:

  1. Есть ли люди, имеющие успех в Android + приложении PhoneGap? или Android + PhoneGap всегда будет проблемой на некоторых устройствах?
  2. Возможно, мне повезло с родным Android-приложением (я никогда не пытался его использовать)? Или несколько устройств/версий всегда проблемы на Android, даже с помощью собственного приложения?

ответ

1

После работы с Android + Cordova в течение некоторого времени у меня есть следующие предложения/комментарии для тех, кто думает о том, чтобы идти в этом направлении.

  1. Рассмотрите возможность использования Sencha Touch, или jQuery Mobile, или другого мобильного фреймворка, который уже закодирован вокруг проблем с Android-браузером (которых есть много). Подумайте, не слишком ли отклоняйтесь от стилей по умолчанию, которые поставляются с этими фреймворками. Простое создание обычной веб-страницы, чтобы выглядеть как мобильное приложение, - постоянная головная боль, чтобы работать над несколькими версиями Android-браузера.
  2. Несмотря на то, что в Android-браузере есть мусор, Mobile Chrome довольно приятный. В Android 4.4 движок Chrome становится механизмом по умолчанию, используемым веб-браузером приложения для Android. Если вам не нравятся Sencha или jQuery Mobile и т. Д., Вы можете приостановить работу и просто использовать мобильный веб-сайт некоторое время, пока Android 4.3 и ниже не станут незначительными. Нетрудно заставить все работать на Mobile Chrome.
  3. Даже без Sencha/JQM вы все еще можете двигаться по пути вокруг проблем с браузером, но это почти так же расстраивает, как разработка для IE6.Ладно, может быть, не так уж плохо ... но близко.
  4. Я начал экспериментировать с родным Android-приложением, и до сих пор он кажется менее головной болью, чем создание приложения с Android + Cordova + lackOfSenchaOrJQMorTheLike. То, что я экспериментировал с работой довольно последовательно среди разных версий Android. Но у меня там не так много опыта, поэтому я не могу слишком много комментировать собственный Android-приложение.
2

1) Да. Есть хорошие приложения, которые основаны на Phonegap и хорошо работают на всех устройствах.

2) Это зависит от того, какие функции Android вы собираетесь использовать. Немного версий, которые не поддерживают некоторые функции, доступные только для новой версии.

BTW, какая минимально необходимая версия, которую вы выбрали для своего приложения? Я предполагаю, что вы разрабатываете приложение с Android в качестве базовой версии.

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

+0

Извините за медленный ответ на ваш ответ. Чтобы ответить на ваш вопрос, минимальная версия SDK в настоящее время установлена ​​на 8 (Android 2.3), и у меня все хорошо работает в этой версии. На самом деле это Android 4.0, который (безусловно) является наиболее проблематичным. Все, что выше или ниже 4.0, похоже, работает нормально, но это кошмар каждый раз, когда я пытаюсь добавить что-то новое ... Я считаю, что часть проблемы заключается в том, что я не использовал мобильную среду (Sencha, JQM и т. Д.). Мое приложение - это стандартное приложение Backbone.js с мобильным стилем. – Troy

Смежные вопросы