【问题标题】:Adobe AIR nativeProcess support profileAdobe AIR nativeProcess 支持配置文件
【发布时间】:2025-12-08 22:10:01
【问题描述】:

我正在开发一个需要 nativeProcess 支持的项目。为此,我在 AIR 设置 (Flash cs6) 中选择了extendedDesktop 配置文件。但是当我发布 AIR 可执行文件时,会弹出一条错误消息: “描述符必须支持以下配置文件之一:desktop、mobileDevice、extendedMobileDevice、tv、mobileDeviceBase”。 如果我将DesktopextendedDesktop 配置文件支持都添加到应用程序,那么nativeProcess.isSupported() 返回false。这是为什么呢?

【问题讨论】:

    标签: actionscript-3 flash air


    【解决方案1】:

    回答我自己的问题:

    事实证明,您必须按特定顺序指定配置文件。如果您想支持Desktop 配置文件并拥有ExtendedDesktop 配置文件功能(例如nativeProcess),您必须在应用程序的.xml 文件中指定它,如下所示:

    <supportedProfiles>extendedDesktop desktop</supportedProfiles>
    

    此外,在发布时,请确保选择输出为:Windows Installer,否则在运行已安装的应用程序时将无法获得nativeProcess 支持。

    延伸阅读:https://forums.adobe.com/thread/699165

    【讨论】:

    • 事实上,-target bundle 和 -target native 都会生成一个可以运行本地进程的可执行文件。
    • 这在最近的 Flash 版本中可能有所改变,尽管我不能确定。我清楚地记得 native 是唯一导致 nativeProcess.isSupported() 返回 true 的目标。
    【解决方案2】:

    这就是你所需要的: extendedDesktop desktop 还要注意,编译器参数也必须在运行/调试设置中设置 -> 命令行参数:-profile extendedDesktop

    【讨论】:

    • 谢谢。 Flash cs6 中的“命令行参数:”在哪里?
    • 刚才试过了,可惜没用。当我安装编译好的AIR包时,nativeProcess.isSupported() 仍然输出false
    • @BotMaster 错误的答案。星体大师自己找到了解决办法。投了反对票。