我们想编写一些从安静的几个SWF(Flash ActionScript 3)文件中获取数据的自动过程。
除此之外,我们希望它作为我们的自动部署脚本的一部分自动运行(用Ant编写,在Linux上运行)。
你们知道任何允许检查每帧实例数据的SWF解析工具吗? (就我在Google中看到的那样,Adobe AIR将无法在console-linux中运行)
想法? :)
答案 0 :(得分:0)
使用Adobe AIR
我们使用Adobe AIR SDK完成了此操作。 AIR SDK versions 2.6 and earlier支持Linux。
您无需一直为Linux桌面打包应用程序,只需使用adl工具运行您的应用程序。
首先,编写一个ActionScript应用程序,用于加载和解析SWF中的数据并将其编译为loader_app.swf
然后创建一个应用程序描述符xml,例如:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/2.6">
<id>HelloWorld</id>
<versionNumber>0.0.1</versionNumber>
<filename>HelloWorld</filename>
<initialWindow>
<content>loader_app.swf</content>
</initialWindow>
<supportedProfiles>extendedDesktop</supportedProfiles>
</application>
要在Linux下运行此应用程序,只需运行:
> /<path_to_air_sdk>/bin/adl app.xml
注意:
我依旧回忆起可以在无头模式下运行空气,但我们的解决方法是在X显示器上运行虚拟VNC服务器:99并设置DISPLAY =:99以使adl使用该X服务器我们可以从cron运行它。
如果您希望AIR应用程序的多个实例同时运行,则需要更改app.xml中的字段。 AIR仅为每个id创建一个实例。
如果您想澄清任何步骤,请告诉我。
不使用Adobe AIR
另一种可能性是使用redtaramin声称允许从命令行运行actionscript。不幸的是,我没有这个工具的经验。