Android AS3-空气总泵和;SWF发送器

Android AS3-空气总泵和;SWF发送器,android,actionscript-3,flash,air,localconnection,Android,Actionscript 3,Flash,Air,Localconnection,我无法在为AIR设置的主文件和为FlashPlayer设置的从属文件(常规SWF)之间使用本地连接。 下面是两个测试文件的代码 主/接收器文件: // test-AIR.fla import flash.display.Loader; var loadK1:Loader=new Loader(); loadK1.load(new URLRequest("K1/test-SWF.swf")); addChild(loadK1); var localConnection:LocalConnectio

我无法在为AIR设置的主文件和为FlashPlayer设置的从属文件(常规SWF)之间使用本地连接。 下面是两个测试文件的代码

主/接收器文件:

// test-AIR.fla
import flash.display.Loader;
var loadK1:Loader=new Loader();
loadK1.load(new URLRequest("K1/test-SWF.swf"));
addChild(loadK1);
var localConnection:LocalConnection = new LocalConnection();
localConnection.allowDomain("*");
localConnection.client = this;
localConnection.connect("_connectionName");
function onMethod(timeString:String):void {
    trace("onMethod called at: " + timeString);
    }
发送者

// K1/test-SWF.fla
var localConnection:LocalConnection = new LocalConnection();
localConnection.send("_connectionName", "onMethod");
trace("END of test-SWF.swf");
然后,下面是显示未调用onMethod的输出:

[SWF]test-AIR.SWF-解压缩后1170字节

K1/test-SWF.SWF-解压缩后625字节

试验结束SWF.SWF[SWF]

我觉得我什么都试过了。有人能指出我错了什么或遗漏了什么吗?
谢谢,

因为两个主权财富基金都在同一个安全域中,它们可以无限制地访问彼此的显示列表。因此,我通过显示列表层次结构调用该方法解决了这个问题:

MovieClip(this.parent.parent).onMethod();
这样,无论发布目标是什么(浏览器、桌面、移动设备……),都可以从子应用程序调用该方法


@谢谢你的帮助

一些疯狂的猜测。1.在设置LocalConnection之后加载外部SWF。谁知道呢,也许在你连接收器都没接上之前,它就在现场加载和执行了。2.为所有可能的事件注册所有LCs并跟踪它们。可能会给你一个提示。3.我认为onMethod方法必须是公开的。4.首先在一个SWF内尝试,确保它工作正常。5.阅读官方文件,有很多细微差别:谢谢你,我尝试了一切,但都没有成功。我担心这是因为移动设备配置文件不支持LocalConnection:我正在寻找解决方法。我们将不胜感激!为什么您需要LC在单个应用程序实例中进行通信?它是一个最初为web浏览器设计的大型应用程序。使用多个文件可以加快加载速度。它总共有10多个FLA/SWF文件。现在,我正在尝试将其移植到移动设备和桌面设备。根据您的体系结构,它可能是一个选项。