Adobe AIR и iPhone - как это работает? - PullRequest
10 голосов
/ 28 марта 2012

Кто-нибудь знает, как приложение Adobe AIR преобразуется в приложения для iPhone?Я вижу два пути - либо виртуальная машина Adobe AIR должна быть частью каждого приложения, либо они должны каким-то образом преобразовывать все вызовы ActionScript в вызовы Cocoa Touch или иметь двойник Objective-C для каждого класса ActionScript, а затем компилировать его в ассемблер ARM.

Мне просто любопытно, как это сделано технически.

BR STEN

Ответы [ 2 ]

11 голосов
/ 28 марта 2012

В отличие от других платформ, Adobe Air компилируется в собственный код при создании приложения для iOS.

Вот часть сообщения в блоге от Adobe:

Мы создали новый интерфейс компилятора, который позволял LLVM понимать ActionScript 3, и использовали его существующиеСерверная часть ARM выводит собственный код сборки ARM .Мы называем это компиляцией Ahead of Time (AOT) - в отличие от того, как Adobe Flash Player и Adobe AIR работают на настольном компьютере с использованием компиляции Just in Time (JIT) .Поскольку мы можем скомпилировать ActionScript в ARM заблаговременно, приложение получает все преимущества производительности, которые предлагает JIT, и соответствие лицензии , не требующее времени выполнения в конечном приложении .

Это означает, что:

  1. Среда выполнения Air не упакована в приложение.

  2. Код AS3 не преобразуется в Objective-Код на C, но компилируется непосредственно в собственный код сборки.

1 голос
/ 15 февраля 2013

взято с сайта Adobe: http://www.adobe.com/devnet/air/articles/air3-install-and-deployment-options.edu.html

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

Любой, кто использует встроенную среду выполнения, должен знать, что у нее есть два недостатка:

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

Увеличение бремени безопасности.

...