未在同一SWF中接收多个SharedObject的onSync删除事件

Ada*_*man 13 flash-media-server actionscript-3 shared-objects wowza

我有一个使用远程SharedObjects的应用程序,我看到一些奇怪的行为.我正在使用Flash Builder在AS3中编写ActionScript应用程序并连接到Wowza Media Server 2.

我的应用程序工作得很好但我现在正在尝试使用FlexUnit为它编写单元测试.我的单元测试涉及创建到同一个远程SharedObject的多个连接,并确保我正确地获得更新.一切似乎都运行良好,除了我没有得到任何带有"删除"的info.code的SyncEvent.SYNC事件.当我在单独的选项卡中独立运行应用程序或甚至在同一页面中嵌入的单独swfs时,它可以正常工作.出于某种原因,虽然它在单元测试中不起作用.我还发现,如果我在同一个SWF中使用Loader加载swfs,那么我会得到相同的行为.在我看来,同一个SharedObject在同一个SWF中的行数是多方面的.我不得不在单元测试中解决其他奇怪的行为,例如oldValues也没有在onSync事件中正确设置.

任何人有任何想法如何解决这个问题?这是一个已知的问题?我疯了吗?:)

非常感谢任何帮助!

小智 0

之前,当我使用 Cairngorm 等编码框架开发一些 Flex 应用程序并使用多个远程对象连接到 AMFPHP 时,我也遇到过这个问题。

当时我想解决这个问题的方法是确保这些远程对象不会同时被触发。这是试图建立一些所谓的“顺序链”来依次发射这些远程对象。

为了实现这一点,如果您从头开始可能会很困难,您可以考虑使用那些现代的 ActionScript 框架 2.0 来帮助您(例如 SWIZ 或 Robotlegs)。这在一开始可能太复杂而无法处理。我建议您只需放置要由框架处理的远程对象部分,同时保持其他内容不变。