我正在尝试像往常一样使用ExternalInterface并从main.swf访问.as文件(connect.as)的公共函数。我可以使用零错误制作swf,但我没有看到日志和功能...
例如,有一个名为create
的函数public function create(webSocketId:int,url:String,protocols:Array,proxyHost:String=null,proxyPort:int= 0,headers:String=null):void {
我尝试甚至从connect.as
中调用它create(0,'ws://mysie.com:8004',undefined,undefined,undefined);
Ps:我已经检查过上面的代码通常是传入的内容。
main.swf<<我给了文档connect.as
这个类connect.as:
package net.gimite.websocket {
import flash.display.Sprite;
import flash.external.ExternalInterface;
import flash.system.Security;
import flash.utils.setTimeout;
import mx.utils.URLUtil;
ExternalInterface.call('consol.log',"flash hello");//<----not working
public class WebSocketMain extends Sprite implements IWebSocketLogger{
//there are lots of public functions I'm trying to access from main.swf in here
main.swf在此尝试中不喜欢第二行:
import connect;
var connect:Connect = new Connect();
connect.create(10,'ws://mysite.com:8004',undefined,undefined,undefined);
场景1,层'第1层',第1帧,第2行1026:构造函数必须是实例方法。
答案 0 :(得分:0)
将ExternalInterface.call('consol.log',"flash hello");
置于class WebSocketMain
的构造函数中或其他任何函数中,因为将它放在类外是没有意义的。