0

我的应用程序需要使用 ABC 加载外部 swfs。我检查了此功能在 AIR 3.7 及更高版本中可用。我设法使用最新版本的 FD (4.4.3) 获得了新的 SDK - 3.8。

现在我关注这个链接:http: //blogs.adobe.com/airodynamics/2013/03/08/external-hosting-of-secondary-swfs-for-air-apps-on-ios/

根据这篇文章,“在 IPA 打包期间,ADT 从所有子 SWF 中提取 ABC 代码,将其添加到最终的可执行文件中,并在当前工作目录中创建的“externalStrippedSwfs”文件夹中生成剥离的 SWF。“externalStrippedSwfs”中的目录结构” 文件夹与文本文件中指定的相同。然后,​​生成的剥离 SWF 应在外部托管在开发人员选择的 Web 服务器上。”

但是,首先,我找不到任何名为“externalStrippedSwfs”的文件夹。

其次,即使这样可行,这意味着每次我要加载新的外部 swf 时,我都必须将其从代码中剥离,将其放入主 swf,然后上传剥离的 swf(带有资产)。所以每次我这样做时,我都需要将我的应用程序“重新上传”到 Apple。

这些假设正确吗?我的应用程序架构将需要相应地修改。

4

2 回答 2

2

是的,您的假设是正确的:您无法加载包含 AS3 的外部 .swf 并让应用程序执行字节码。

如果我们忽略它很可能不会被 Apple 批准的事实,它在技术上是行不通的。原因是 Adob​​e AIR 应用程序不包含能够解释 .swf 中的字节码的虚拟机:

当您为 iOS 构建应用程序时,最终二进制文件中没有解释代码,也没有运行时。您的应用程序是真正的原生 iOS 应用程序。

资料来源: http: //www.adobe.com/devnet/logged_in/abansod_iphone.html

于 2013-09-30T14:08:31.913 回答
0

你能行的!:) 您只需要升级到 AIR SDK3.8+ 并遵循痛苦的过程。唯一的限制是您将在运行时加载的每个外部 swif,必须由您的 ADT 剥离。但是您是对的:每次需要更新外部内容时,您都需要更新您的应用程序。

“externalStrippedSwfs”是任意的(我相信你可以随意命名),你必须在你的 bin 中创建该文件夹并从那里运行命令行。

看起来苹果还没有准备好摆脱束缚……

于 2013-09-30T19:51:56.617 回答