我正在开发一个网站,需要与AIR应用程序进行通信,我使用JavaScript进行开发,并且对动作不太了解。我处于早期阶段,我正在使用Adobe Flash试用版来创建一些可以与javascript进行通信的swf文件,Action窗口中的代码如下所示(大部分内容来自web示例):从Adobe Flash移动到FlashDevelop
import flash.external.ExternalInterface;
var myText:String = "Example String";
ExternalInterface.addCallback("sendOutput", sendStaticTextFromAS3);
function sendStaticTextFromAS3():void {
ExternalInterface.call("receiveTextFromAS3", myText);
}
这一切正在做的是接收从JavaScript调用,并发送回一个字符串,并要求将处理它的函数(它会变得更加复杂)。
我的问题是,Flash即将到期,并为未来验证项目,而不必花费在Flash上很多我想进入FlashDevelop。因为我不需要舞台上的任何对象,所以我需要编辑actionscript,所以我需要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
}
}
}
我猜的Adobe Flash会将此自动编译SWF的时候,所以我不知道在哪里我的代码应该去,除了添加import flash.external.ExternalInterface;在顶部?
任何帮助将不胜感激,希望它是一个简单的复制和粘贴的东西。
谢谢大家。
绝对有帮助,谢谢你应该给我一条腿 – will900 2012-03-30 20:34:56
很好的详细答案! +1 – 2012-09-20 16:49:19