Android SDK против Adobe AIR: плюсы и минусы? - PullRequest
9 голосов
/ 06 июля 2010

Кто-нибудь писал об этом сравнении или кто-нибудь хочет попробовать? Было бы неплохо увидеть некоторые аргументированные мысли об Adobe AIR для Android против "родного" Android SDK (на Java).

Редактировать: Несмотря на небольшое количество просмотров и отсутствие ответов, я оставляю этот вопрос здесь, так как это тема, которая должна быть раскрыта в какой-то момент ... но если она не получит внимания, я удалите его через несколько дней.

Ответы [ 3 ]

11 голосов
/ 08 июля 2010

Я думаю, что в конечном итоге это очень похоже на вопрос, использовать ли AIR или Java для настольных приложений. В конечном итоге все сводится к трем пунктам:

  1. AIR делает все, что вам нужно? Очевидно, Android SDK дает вам полный доступ к возможностям устройства, но AIR специально не делает, чтобы оставаться портативным. Например, AIR может не поддерживать намерения, по крайней мере на начальном этапе (я не думаю, что Adobe объявила об этом так или иначе). Также для AIR требуется Android 2.2. Если эти ограничения проблематичны, лучше всего подойдет Android SDK.

  2. Вы хотите сделать что-то, что было бы хорошо для использования во Flash? Если вы планируете приложение с интенсивным дизайном, содержащее анимацию, видео, звук и т. П., Его создание во Flash может быть значительно проще, чем с использованием Java. С другой стороны, если ваше приложение будет представлять собой чистый код, использующий только стандартные визуальные компоненты, то может не иметь значения, какую платформу вы используете. Или, с другой стороны, если у вас есть Flash-анимация или что-то подобное, попытка вставить их в приложение Java будет утомительной.

  3. Вы ориентируетесь на другие платформы, кроме Android? Если это так, AIR может быть большой победой, поскольку тот же контент приложения должен запускаться на Windows, Mac, Linux и других устройствах, которые планируют поддерживать AIR, таких как Blackberry, некоторые телевизоры, проигрыватели дисков Blu-Ray и т. Д. Если вы ориентируетесь только на Android, AIR может потерять часть своей привлекательности.

Надеюсь, это поможет некоторым. Реально, если вы не заблокированы в использовании AIR, потому что вам нужно что-то, что оно вам не дает, или в использовании AIR, потому что вы делаете тяжелую работу по дизайну и нуждаетесь в инструментах, тогда я думаю, что плюсы и Минусы двух SDK - это в основном вопросы удобства. Любая платформа будет работать, так что это просто, что приведет вас к финишу быстрее и надежнее.

5 голосов
/ 19 июня 2012

У меня есть опыт работы с AIR в основном и мало с Android SDK, когда я создавал собственное расширение для AIR.Моя самая большая проблема с AIR - это незрелость, ошибки и непоследовательное поведение.Да, вы можете перейти на блестящую страницу на adobe.com и посмотреть, насколько крутой AIR ... Все ярко с тоннами функций, которые, кажется, покрывают все ваши потребности.Тем не менее, как только вы начнете создавать свое приложение, вы обнаружите много неприятных сюрпризов:

  1. Сцена текста не работает должным образом. ссылка помимо этой ошибки в StageText есть еще несколько ошибок, например, поведение в Scroller.

  2. Объект Sound () не воспроизводит поток (он работает в эмуляторе)только). ссылка

  3. Отсутствие таких функций, как AEC, делает AIR бесполезным для всего списка приложений чата, так как вы услышите эхо и крики. ссылка

  4. Перегруженный (и незрелый для мобильных устройств) Flex SDK (я надеюсь, что пользователи в Apache перепишут его с 0 и сделают его более управляемым).

  5. Нет поддержки H264 на устройствах iOS: link (да, я знаю, что это проблема Apple, что они хотят контролировать доставку HD на своей платформе, но это тоже проблема Adobe, так как онине мог бороться, чтобы вывести их технологию на передний план).

  6. Звуковой объект не принимает переменную ставку (возможна только 44,1 кГц).Вспышка "второго поколения" образцов кодека Speex на 16 кГц.Теперь попробуйте воспроизвести это через звук, и вы получите удовольствие от забавного цирка.В конце вам нужно будет написать свой собственный алгоритм повышения.

Я уверен, что люди добавят больше в этот список.Итак, мой ответ будет нативный SDK предпочтительнее для всего серьезного.Вы не будете работать с ним, как специалист по обеспечению качества - тестируете бесчисленные маленькие примеры, пытаясь понять, почему не работает функция AIR, перетасовываете интернет для ответов и просматриваете базу данных ошибок AIR ... только чтобы обнаружить, что критические ошибки присутствуют с момента выпускавыпустить.Это мой опыт работы с AIR.Использование собственного SDK делает ваше приложение на самом деле не «кроссплатформенным», но AIR SDK не может претендовать на этот заголовок в любом случае для чего-то более серьезного, чем пара примеров «Employee directory».И если вам нужно будет собрать для другой платформы, вы просто будете использовать для нее нативные инструменты.

GL.

5 голосов
/ 22 сентября 2011

Одной из проблем является совместимость с устройствами Android. В Android работают как модные смартфоны, так и дешевые телефоны, но они не имеют одинаковых возможностей. Даже если ваше приложение простое или может быть красиво выполнено в AIR, важно упомянуть, что AIR не совместим со всеми устройствами Android.

Некоторые очень популярные устройства, продаваемые в настоящее время (например, Samsung ACE и другие «дешевые» устройства), используют чипы ArmV6, и AIR или Flash не совместимы с этой архитектурой, даже при работе на Android 2.2 или около того.

AIR интересен тем, что одна и та же разработка работает в разных технологиях, но учтите, что AIR также не работает на «старых» iPhone, а только гарантирует работу на новых технологиях с большими процессорами.

Проверьте эту ссылку Adobe http://www.adobe.com/flashplatform/certified_devices/

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...