我正在開發一個網站,需要與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