Я написал много ниже, если вы хотите прочитать его, наслаждайтесь, если не извините, что забрали ваши ценные байты :) Сначала я прямо ответил на вопросы здесь:
Почему это?
Это запутанный вопрос, читайте ниже для деталей почему.
Возможно, они хотят сказать, что Flex не запускается "из коробки" и требует плагин?
Или они имеют в виду, что он вообще не будет работать?
С помощью инструментов Flash Builder (папка bin в SDK) вы можете скомпилировать для собственного настольного приложения, настольных веб-браузеров, родного iOS-приложения, нативного Android-приложения. Android с установленным плагином FlashPlayer будет показывать Flash-контент в веб-браузере, iOS будет запускать только те, которые скомпилированы с AIR, не в веб-браузере, а в виде собственного приложения.
Каждый раз, когда мне кажется, что я пришел к окончательному выводу, какой-то пост на SlashDot или CNET прямо противоречит этому. Так в чем же суть? Можно ли взять существующее приложение Flex и запустить его на iOS / Android?
Да, если вы используете AIR и работаете как собственное приложение на всех трех платформах (API Flex для настольных компьютеров по большей части является расширенным набором веб-API Flex), другие ваши соображения относительно производительности и форм-фактора являются действительными и должны быть учтены. Приятно то, что вы можете написать свой код модели / контроллера в общей библиотеке AS3, а затем написать отдельные интерфейсы уровня представления, которые совместно используют библиотеку.
Вот очень длинная версия:
Использование флэш-компилятора приводит к появлению «байт-кода» в виде файла с расширением swf, использующего формат swf, вы можете прочитать об этом подробнее здесь:
http://www.adobe.com/devnet/swf.html
Для интерпретации файла вам понадобится какое-то время выполнения, в некоторой степени похожее на запуск WPF / XAML / C # в контексте платформы .NET (либо на рабочем столе, либо с использованием silverlight в Интернете). В случае с технологиями Adobe (грубая эквивалентность):
- AS3 = C #
- MXML = XAML
- Flex = WPF + WCF (RPC на стороне клиента, а не на стороне сервера)
- Flash Player = Silverlight
- AIR (интегрированная среда выполнения Adobe) = .NET
Framework Redistributable .dll (s) /. So (s) для настольных ОС
(Прочтите этот список очень свободно, пожалуйста, я знаю, что XAML сохраняется в MSIL или чем-то еще, что отличается, потому что MXML скомпилирован в AS3, и только если флаг отладки установлен на компиляторе, он включает символы отладки, конечно, есть куча различий, но я думаю, что это простая и достаточно правильная модель для использования)
В iOS браузер не допускает плагинов в традиционном понимании плагинов для браузера netscape или плагинов ActiveX. По этой причине вы не сможете запустить плагин, например, flashplayer или silverlight в браузере. Так как Adobe выпустила flashplayer для устройств Android, которые работают в браузере, она будет работать на этих устройствах в браузере, однако они, по сути, добавили полотенце для поддержки этого длительного срока, так как они должны поддерживать большинство мобильных платформ устройств, iOS, чтобы оставаться актуальным (это было, я думаю, более коллективное добавление полотенца Google, производителями устройств, операторами связи, Microsoft, просто следуя примеру и пытаясь принять лучшее деловое решение, WebKit и V8 или SpiderMonkey, возможно, могут делать 99% того, что может сделать Flash, и лучше в некоторых случаях, и, надеюсь, WebKit не расколется и останется открытым исходным кодом ... фреймворки и браузеры просто нуждаются в улучшении и стабилизации).
Если пользователь устанавливает AIR (или среда выполнения упакована вместе с приложением), то Flex / Flash (то есть материал, закодированный в AS3 и / или MXML и скомпилированный в swf) может быть перекодирован / упакован для интерпретации пользователем. Правильно для этого устройства (будь то iOS или Android или RIM, я не думаю, что у них AIR для Windows Phone 7 и Win8 на ARM также не будут поддерживать плагины для браузера). Частично путаница, возможно, связана с тем, что Apple отказала в распространении «кросс-компилированных» приложений, из-за чего AIR не попала в список параметров для iOS на хороший год, сразу после того, как Adobe начала объявлять, что она пригодна для этой цели. (пиная Adobe пока они вниз). Другая часть путаницы, вероятно, связана с реальными видеозаписями людей, которые 1 взломали свое устройство или 2 смогли получить альтернативы с открытым исходным кодом для флеш-плеера для работы на своем устройстве iOS (мне известно о gnash некоторые случайные изменения в Linux, а также, возможно, FAKE vids).