我正在开发一个需要与AIR应用程序通信的网站,我使用javascript开发并且对actionscript不太了解.我正处于这个阶段的早期阶段,我正在使用Adobe Flash的试用版来创建一些可以与javascript通信的swf文件,Action窗口中的代码如下(大部分内容来自web示例):
import flash.external.ExternalInterface;
var myText:String = "Example String";
ExternalInterface.addCallback("sendOutput", sendStaticTextFromAS3);
function sendStaticTextFromAS3():void {
ExternalInterface.call("receiveTextFromAS3", myText);
}
Run Code Online (Sandbox Code Playgroud)
所有这一切都是从javascript接收调用并发回一个字符串并调用将处理它的函数(它将变得更复杂).
我的问题是Flash即将到期,并且为了将来证明该项目而不必花费大量精力于flash我想进入FlashDevelop.因为我不需要舞台上的任何对象,所以我需要的是编辑动作脚本,因此FlashDevelop就是我所需要的.我在FlashDevelop中创建了一个新的AS3项目,我得到了这段代码:
package
{
import flash.display.Sprite;
import flash.events.Event;
/**
* ...
* @author Will Thomas
*/
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
}
}
}
Run Code Online (Sandbox Code Playgroud)
我猜测Adobe Flash在编译swf时自动添加这个,所以我不知道我的代码应该去哪里,除了添加导入flash.external.ExternalInterface; 在顶部?
任何帮助将不胜感激,希望它是一个简单的复制和粘贴的东西.
谢谢大家.