我们正在使用Adobe Flash / Flex构建基于浏览器的应用程序,该应用程序需要在主要浏览器的多个版本(IE,Firefox,最好是Chrome和Safari)中运行,最好是在多个操作系统上运行。 Flash Player是否真正独立于浏览器,如果我们只在一个浏览器中测试应用程序,我们可以肯定它会在所有其他浏览器中正常运行吗?如果没有,我们应该避免哪些类型的功能以确保浏览器独立性,以便我们可以限制我们需要测试的环境数量?
答案 0 :(得分:3)
是的,Flash Player本身与浏览器无关。唯一的问题可能是在某些特定浏览器中出现的罕见错误(例如使用FileReference
等文件上传的FireFox中的cookie问题)。但数量或此类错误并不重要。
答案 1 :(得分:3)
我见过两个问题:
要记住的另一件事是最近Flash Player 10.2和Internet Explorer 9之间的集成.IE9具有硬件加速渲染支持,FP 10.2集成了该功能以提高渲染性能,根据MS /,速度提高35%的Adobe。您将需要在没有Flash硬件加速支持的浏览器中测试您的应用程序,以确保渲染性能可以接受。更多信息:http://blogs.msdn.com/b/ie/archive/2010/12/03/flash-player-10-2-beta-supports-ie9-s-hardware-acceleration.aspx
答案 2 :(得分:2)
没有。 Flash有一个在IE中运行的特殊版本。通常这不是问题,但我注意到IE版本存在 主要 性能滞后的时间。花费我几天的开发时间。
尽管如此,我之前使用的情况是通过一些相当计算密集的进程发送了大量数据。我打赌我发现1万分之一的角落。
答案 3 :(得分:1)
总的来说,几乎所有意图和目的,是的。代码和定位应该在您部署内容的任何平台上以相同的方式工作。
也就是说,有特殊情况,但它们往往难以接受。我见过的那些人:
如果用户碰巧安装了Flash Player 10.0,则使用基于帧的状态与IE中的flash的PrintJob类一起使用时可能会出现问题(更改框架时会出现Horrifying,firey crash。只发生在IE6和那个特定版本的FP。我在3年中遇到过这一次)
请记住,这些因其稀有而脱颖而出。多年来,使用Flash出现跨浏览器/操作系统问题的次数一方面低于我可以依赖的次数。
答案 4 :(得分:1)
我只能想到你可能遇到的两个问题
Safari处理套接字连接与其他浏览器略有不同。我有一个问题,我的ActionScript数据接收事件是破坏的,因为Safari没有缓冲它们。这导致我必须重写我的套接字类。
我能想到的另一个问题是跨不同操作系统IE的文件引用:windows和mac。
答案 5 :(得分:0)
困扰我一段时间的一个问题来自于闪存和浏览器之间的集成并不太热。
IE(旧版本,不确定更新版本)对URL的长度有限制 - 如果您将许多参数附加到查询字符串,这可能会很长。 Flash播放器很乐意将长URL请求传递给浏览器,但如果IE由于长度而失败,则Flash播放器不会告诉您任何内容