并非SleepMode之错——IE9对Flash Player的影响
转载自zrong’s Blog,原文 并非SleepMode之错——IE9对Flash Player的影响,欢迎使用文章源码进行转载。
本站转载文章会标明[转],转载请注明原始作者文章地址。
Flash Player从版本10.1开始加入了Sleep Mode(睡眠模式),具体表现为在浏览器中的Flash Player窗口不可见(最小化、被完全遮挡,或被滚动条带到不能显示的地方)时,自动将帧率降低到4帧/秒。我原来也写过一篇文章介绍FPS对Socket链接的影响
睡眠模式给游戏开发者带来很大的麻烦,但并非不可解决。目前最常用的两种解决方式是这样:
- 在JS中写一个计时器,每隔一段时间调用SWF提供的方法,可以避免进入睡眠模式;
- 在swf中播放一段不间断的声音,可以让帧频维持在8帧/秒。
但是,即使是使用了这两种方法,在IE9中,依然会受到“睡眠模式”的影响!而且,这个“睡眠模式”的提供者是IE9,我们无法绕过。
就目前我测试得到的情况,IE9对Flash Player有如下影响:
- 在IE9窗口最小化时,会自动切断音视频流;
- 在IE9窗口最小化时,会自动切断客户端与服务器的通信,但不会切断连接。
测试环境:
- Windows 7 旗舰版
- Internet Explorer 9
- Flash Player 10.3.181.34 标准版+Debug版
开发环境:
- 客户端:Flex SDK 4.5.1
- 服务端:Flash Media Server 4.0
以上结论是只测试了FMS为服务器的情况,没有测试Socket的情况,想来应该没什么区别。
网上搜了一通,没有什么中文资料,但在Microsoft Answer上找到这样一篇文章。我想中文资料少的原因可能是国内的开发者都不太愿意转到Win7环境,而导致无法升级IE9,所以碰不到这个问题。
上文中也说到一个解决办法,由于公司电脑无法装IE9,我暂时还没有测试:
See if this fixes the Flash/IE9 problem.
From Safety (on the IE Command Bar) uncheck) ActiveX filtering.
本文出自 传播、沟通、分享,转载时请注明出处及相应链接。
本文永久链接: https://www.nickdd.cn/?p=1639