Javascript 如何检测移动浏览器是否可以安装Flash?

Javascript 如何检测移动浏览器是否可以安装Flash?,javascript,flash,mobile-safari,Javascript,Flash,Mobile Safari,我曾访问过几个网站,包括我的网站,它们会提示用户下载Flash,即使他们的浏览器无法安装它。我想通过检测移动浏览器是否可以安装Flash,而不是是否有Flash来避免这种混乱的消息传递 一些已知的无法安装Flash的移动浏览器包括: iOS野生动物园 Android Chrome测试版 安卓火狐 我不想建立一个不断变化的Flash可安装性列表,而是希望在Javascript中以一种通用的方式检测到这一点。在任何浏览器引擎中都没有“您的浏览器是否支持潜在的扩展X”功能 我相信唯一的选择是建立一

我曾访问过几个网站,包括我的网站,它们会提示用户下载Flash,即使他们的浏览器无法安装它。我想通过检测移动浏览器是否可以安装Flash,而不是是否有Flash来避免这种混乱的消息传递

一些已知的无法安装Flash的移动浏览器包括:

  • iOS野生动物园
  • Android Chrome测试版
  • 安卓火狐
我不想建立一个不断变化的Flash可安装性列表,而是希望在Javascript中以一种通用的方式检测到这一点。

在任何浏览器引擎中都没有“您的浏览器是否支持潜在的扩展X”功能

我相信唯一的选择是建立一个已知良好的用户代理列表

  • 一些Android设备支持Flash

  • 可以安装闪存时,这些设备不会暴露

  • 已知运行闪存的白名单设备。由于Adobe将很快淘汰移动Flash,这个列表应该相对较小


此外,由于移动浏览器扩展的安装机制没有标准化,您无法帮助用户在移动设备上安装Flash

看起来很少有手机浏览器支持Flash插件——其中一个是名为“浏览器”的默认应用程序。但在浏览器上进行用户代理检测是很困难的。它没有明显的特点。至少三星Galaxy S识别了自己。也许你应该到这里来。我确实研究过各种Android浏览器的用户代理。Chrome beta的区别子字符串是“CrMo”。Firefox与众不同的子字符串是“Firefox”。默认浏览器没有明显的特征。假设当我做了一系列的
if-else
来捕获第三方浏览器并到达最终的
else
时,我只剩下浏览器了,这有多安全?这让人感觉很不舒服,因为有太多的第三方浏览器,我必须添加到我的列表中-海豚、歌剧等等。。。。谁知道。。。也许更多?我认为最好的假设是,如果是移动浏览器,Flash安装是不可能的。无论如何,移动闪存正在消亡-您的解决方案的最长使用寿命为一年。