Apache flex 如何将Flash builder空中移动项目导出到swf

Apache flex 如何将Flash builder空中移动项目导出到swf,apache-flex,air,flash-builder,flash,flex4.5,Apache Flex,Air,Flash Builder,Flash,Flex4.5,我已经创建了一个flex mobile as3项目,它可以导出到air、ipa和apk。 此项目不使用任何特定于移动或空中呼叫(摄像头、文件…) 我的问题是:如何创建swf? 关于由于您的项目不使用任何特定于空气的API,您可以使用Ant构建从您的移动项目创建SWF。如果您的项目作为单个flashbuilder项目是自包含的,那么下面的构建文件就可以做到这一点 <?xml version="1.0" ?> <project name="Build" default="build

我已经创建了一个flex mobile as3项目,它可以导出到air、ipa和apk。 此项目不使用任何特定于移动或空中呼叫(摄像头、文件…) 我的问题是:如何创建swf?
关于

由于您的项目不使用任何特定于空气的API,您可以使用
Ant
构建从您的移动项目创建SWF。如果您的项目作为单个flashbuilder项目是自包含的,那么下面的构建文件就可以做到这一点

<?xml version="1.0" ?>
<project name="Build" default="build">
    <property name="FLEX_HOME" value="C:/Program Files/Adobe/Adobe Flash Builder 4.7/sdks/4.6.0" />
    <taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar" />

    <property name="PROJECT_NAME" value="MyMobileProject" />
    <property name="PROJECT_BASE_DIR" value="C:/FlexProjects/${PROJECT_NAME}" />
    <property name="PATH_TO_SRC_FOLDER" value="${PROJECT_BASE_DIR}/src" />
    <property name="OUTPUT_DIR" value="${PROJECT_BASE_DIR}/bin" />

    <target name="build">
        <mxmlc file="${PATH_TO_SRC_FOLDER}/${PROJECT_NAME}.mxml" 
            output="${OUTPUT_DIR}/${PROJECT_NAME}.swf" 
            show-actionscript-warnings="false" show-binding-warnings="false"
            locale="en_US" incremental="true">
            <load-config filename="${FLEX_HOME}/frameworks/flex-config.xml" />
            <source-path path-element="${PATH_TO_SRC_FOLDER}" />
            <external-library-path dir="${FLEX_HOME}/frameworks/libs" append="true">
                <include name="*.swc" />
            </external-library-path>
            <compiler.library-path dir="${PROJECT_BASE_DIR}/libs" append="true" includes="*"/> 
        </mxmlc>
    </target>
</project>


如果您有源代码,只需使用相同的文件创建一个新项目,并将项目的运行时设置为Flash Player(而不是桌面/IOS/Android的AIR)。.air文件实际上是一个包含主.swf文件(以及其他文件)的zip文件,但我怀疑您是否能够简单地运行它。(我猜如果你直接在Flash Player中运行这个swf,它会检查它的运行时和丢骰子错误缺少AIR运行时类)。是的,但是如何维护2个项目呢?@user300675在这种情况下,你会将核心类创建为库/模块。然后在创建FlashPlayer或AdobeAIR应用程序时对其进行编译。这样,主要的功能保持不变,只是装饰性的改变。你能给我更多关于如何编译的细节吗?还是运行那个?