У меня есть swc, который должен работать немного по-другому, в зависимости от того, размещается он в AIR или нет. Я видел в Интернете два предложения:
Однако они, похоже, не работают в моем .swc, поскольку компилятор не может найти WindowedApplication или Security.APPLICATION. Моя библиотека не нуждается в каких-либо других функциях AIR, поэтому я предполагаю, что она не связана с библиотеками AIR, и я предполагаю, что не должно быть, чтобы она продолжала работать во флэш-плеере.
Какие-либо предложения?





Я бы попробовал flash.utils.getDefinitionByName (), который позволит вам передать один из классов AIR API в виде строки. Это должно вызвать ошибку, которую можно отловить в среде Flex или успешно выполнить в среде AIR.
Вы можете использовать объект flash.system.Capabilities, чтобы узнать, работаете ли вы в среде AIR.
var isAir : Boolean = (Capabilities.playerType == "Desktop");
var isFlashPlayer : Boolean = (Capabilities.playerType == "StandAlone");
var isBrowser : Boolean = (Capabilities.playerType == "ActiveX" || Capabilities.playerType == "PlugIn");
var isOther : Boolean = (Capabilities.playerType == "External");