我需要确保在任何时候在计算机上只打开一个 SWF 实例,无论它是在 2 个浏览器窗口中,还是在两个不同的浏览器中。
我该怎么做呢?
到目前为止,我已经想到了两种可能的解决方案:
1) 使用 Flash 共享对象 - 但由于它们永不过期,如果用户关闭浏览器窗口而不调用我的退出函数来删除它,剩余的对象将干扰其他新会话。(也许是一个随机数和时间戳来识别实例?)
2)使用本地连接 - 有点骇人听闻,这依赖于 swf 检测是否正在使用 Localconnection 对象,如果是这种情况则不加载。但是 localconnections 似乎在最轻微的挑衅下就会崩溃,所以我对使用它有点警惕。