2

问题是:确保您对站点上的 Flash 版本“x”的要求能够正确检测到更高版本的 Adob​​e Flash Player 版本“10”(或“1y”)的存在的最佳方法是什么?

现在有一个谜团:为什么这么多需要 Flash Player 版本 8 和 9 或更高版本的站点无法检测到 Flash Player 版本 10?

这是我帖子“ WTF:Adobe Flash 版本 1x 危机”中彩色屏幕截图的多汁背景。

更新 2:我已经确认我看到的问题不是关于相同或更新版本的不正确比较。似乎某些客户端检测无法确定是否安装了任何 Flash Player,更不用说它是什么版本了。我还发现,如果我以管理员身份运行,我没有问题:检测 Flash 10 工作得很好。这使得这罐蛇比我最初想象的要大。我还没有准备好更改这个问题的标题,我正在继续剖析客户端代码,看看会出现什么奇妙的逻辑。 这些最新消息的详细信息在我的博客上。

更新:虽然我进行了搜索,但我错过了相关问题“升级到 Flash 10 后为什么不播放 Flash 视频? ”那里的猜测很有趣,但他们没有深入了解。此外,目前尚不清楚李维斯的问题是如何解决的。有趣......也许我们可以在这里找到事情的真相。


一些背景

我设法将新的 Adob​​e Flash Player 版本 10.0.12.36 安装为全新安装(使用 Adob​​e 提供的卸载程序删除了以前的版本)。

当我无法播放来自 CBS 电视网站的最新 NCIS 节目时,我注意到了第一个失望,不是高清的,也不是普通的旧标准。但我可以在 Hulu 上播放我最喜欢的节目的视频。我越是四处寻找,就越多地发现那些令人讨厌的你没有 Flash、你需要一个更高版本的 Flash、你的 Flash 版本的旧消息,它们提供了一个下载按钮。

每次我点击下载/更新按钮,并告诉 Adob​​e 网站进行安装(如果尝试安装应该会失败,因为我没有以管理员身份运行),我已经拥有 10.0.12.36 版本立即得到确认并且没有尝试更新.

好奇吧?


挑战

我想我确切地知道人们正在使用的 Flash 检测脚本中最有可能出现的错误是什么。不是虫子太多汁了。

现在,这并不意味着所有未能检测到版本 10 的站点都会遭受相同的错误。我只是认为我想到的那个很有可能。我可能应该把我的理论封在信封里的某个地方。同时,让我们看看 StackOverflow 社区提供了什么,以及我们总结的课程是什么。

我说这个bug真的很简单也很有趣。你说什么?

4

3 回答 3

2

My guess is the javascript is doing string comparison, and in string land, "10" < "9".

Also, Flash10 changed their security model somewhat (breaking a tool I use called SWFUpload) so it may be related to that (see: http://benr75.com/articles/2008/11/25/swfupload-with-flash-10-fix )

于 2008-12-07T00:57:45.017 回答
1

我的猜测是从字符串中检测,类似于“Flash Player version XY”,方法是执行“get the character before '。” 并将其转换为数字。” 我自己也做过几次,这很愚蠢。

于 2008-12-06T21:29:04.660 回答
1

不幸的是,问题是由于flash 附带的版本检测不佳而引起的。没错,它实际上是由 Adob​​e Flash 创建的伪劣代码(不确定是哪个版本),这就是它如此普遍的原因。

我个人使用swfObject来嵌入 Flash。

于 2008-12-06T21:32:32.483 回答