【问题标题】:AIR to Flash Player and vice versaAIR 到 Flash Player,反之亦然
【发布时间】:2014-01-08 07:35:42
【问题描述】:
我正在开发一个针对互联网和 Android 的应用程序。
对于 Android,我使用的是 AIR,但对于浏览器,我也需要使用 Flash Player。该应用程序将有不同的阶段。到目前为止,为了将 AIR 应用程序移植到浏览器,我曾经从所有 AIR 函数中剥离代码,但现在我不能使用这种方法,因为两者都会有更新。
大问题出现在 ANE 和进口产品上。我将使用功能检测平台并且知道不要进入该代码部分,但是有没有办法标记它们以便它们不会被导入,比如省略跟踪或至少在编译时不会抛出错误。
还是有更好的方法?
【问题讨论】:
标签:
android
actionscript-3
air
flash
【解决方案1】:
我建议您通过编译器常量使用条件编译。 This article 解释了如何做到这一点。
本文面向 FlashDevelop 用户,但无论您使用何种 IDE,您都应该能够完成结果。
这是一个例子:
假设您有一个名为CONFIG::AIR 的配置常量,它被设置为false,下面将只编译括号外的代码。
CONFIG::AIR
{
import some.air.package.AIROnlyClass;
}
import non.air.package.NonAIRClass;
CONFIG::AIR
{
var instanceOfAIROnlyClass:AIROnlyClass = new AIROnlyClass();
}
var instanceOfNonAIRClass:NonAIRClass = new NonAIRClass();
您始终可以添加第二个编译器常量(如CONFIG::NonAIR),并将其设置为true。这样,您也可以将非 AIR 代码包装在条件语句中。