我正在编写Air应用程序,仅使用Actionscript和Flex3 SDK作为编译器。一切都在adl下编译并运行良好,但是当构建并安装最终的air文件时,主类永远不会被初始化。例如:
package {
import flash.display.Sprite;
public class main extends Sprite {
public function main() {
trace("Init");
}
}
}
在ADL下运行时,“Init”将输出到控制台,但是在安装和运行时,没有任何反应(类main的构造函数永远不会被调用)。
答案 0 :(得分:1)
最终的空气文件在发布播放器中运行,不会发送任何痕迹。这就是为什么你没有得到任何东西。
答案 1 :(得分:1)
这是最简单的方法:
1)文件 - 新建 - Flex项目
2)为该测试项目命名为AIRActionScrip,并选择AIR作为应用程序类型。
3)点击“下一步”两次。
4)在“主应用程序文件:”文本输入中,将主应用程序文件扩展名从.mxml更改为.as。
5)单击“完成”,您在ActionScript中有一个AIR应用程序。
6)按如下方式编辑类定义:
package {
import flash.desktop.NativeApplication;
import flash.display.NativeWindow;
import flash.display.NativeWindowInitOptions;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
public class AIRActionScript extends Sprite
{
public function AIRActionScript()
{
var win:NativeWindow =
new NativeWindow(new NativeWindowInitOptions());
win.activate();
win.addEventListener(Event.CLOSE, function():void {
NativeApplication.nativeApplication.exit(0);
});
win.stage.addChild(this);
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
graphics.lineStyle(1, 0, 1);
graphics.drawCircle(100, 100, 80);
}
}
}