未检测到 Flash 10:世界上最广泛的网络视频错误?

发布于 2024-07-10 02:08:28 字数 1659 浏览 12 评论 0 原文

问题如下:确保您对网站上 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真的很简单,也很有趣。 你怎么说?

Here's the Question: What is the best way to make sure that your requirement for Flash Version "x" on a site will properly detect presence of later-version Adobe Flash Player Version "10" (or "1y" for that matter)?

Now here's the mystery: Why are so many sites that require Flash Player versions 8 and 9 or better failing to detect Flash Player version 10?

And here's the juicy background, in technicolor screen captures in my post, "WTF: The Adobe Flash Version 1x Crisis."

UPDATE 2: I have since confirmed that the problem I am seeing is not about improper comparison for the same-or-more-recent version. It appears that some client-side detection is unable to determine whether there is any Flash Player installed at all, much less what version it is. I have also discovered that if I am running as admin I don't have the problem: detection of Flash 10 works just fine. That makes this a bigger can of snakes than I first thought. I'm not ready to change this question's title just yet, and I am continuing to dissect client-side code to see what wondrous logic unfolds. Details on these latest revelations are on my blog.

UPDATE: Although I did a search, I missed the related question "Why don't flash videos play after upgrading to Flash 10?" The speculations there are interesting but they don't get to the bottom of it. Also, it's not clear how Levi's problem was resolved. Interesting ... Maybe we can get to the bottom of things here.


Some Background

I managed to install the new Adobe Flash Player version 10.0.12.36 as a clean install (with previous versions removed using the Adobe-provided uninstaller).

The first disappointment was noticed when I couldn't play the latest NCIS program from the CBS Television site, not in HD, not in plain-old standard. But I could play videos of my favorite programs on Hulu. The more I nosed around, the more times I found those obnoxious you-don't-have-Flash, you-need-a-later-version-of-Flash, your-version-of-Flash-old messages that offered a button for downloading.

Every time I clicked the download/update button, and told the Adobe site to do the install (which should fail if attempted, because I am not running as admin), my already having version 10.0.12.36 was confirmed instantly and no update was attempted.

Curious, huh?


The Challenge

I think I know exactly what the most-likely bug is in the Flash-detection script that people are using. It is just too juicy to not be the bug.

Now, that does not mean all sites that fail to detect version 10 suffer from the same bug. I just think the one I have in mind is really likely. I should probably seal my theory in an envelope somewhere. Meanwhile, let's see what the StackOverflow community has to offer and what we conclude the lesson is.

I say the bug is really simple and very funny. What do you say?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

内心旳酸楚 2024-07-17 02:08:28

我的猜测是javascript正在做字符串比较,并且在字符串领域,“10”< “9”。

另外,Flash10 稍微改变了他们的安全模型(破坏了我使用的一个名为 SWFUpload 的工具),因此它可能与此有关(请参阅:http://benr75.com/articles/2008/11/25/swfupload-with-flash-10-fix )

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 )

疯了 2024-07-17 02:08:28

我的猜测是通过执行“获取 '.' 之前的字符”之类的操作来检测类似于“Flash Player 版本 XY”的字符串。 并将其转换为数字。” 我自己也做过几次这样的事,这太愚蠢了。

My guess would be detection from string which is something like "Flash Player version X.Y" by doing something like "get the character before '.' and convert it to number." I've done this a few times myself, it's just stupid.

坏尐絯℡ 2024-07-17 02:08:28

不幸的是,这个问题是由于随闪存提供的版本检测较差而引起的。 没错,它实际上是由 Adob​​e Flash 创建的劣质代码(不确定是哪个版本),这就是它如此普遍的原因。

我个人使用 swfObject 来嵌入 flash。

Unfortunately the problem is caused because the poor version detection shipped with flash. That's right, the shoddy code it actually created by Adobe Flash (not sure which versions), which is the reason it's so widespread.

Personally I use swfObject to embed flash.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文