2011-09-29 72 views
4

我的Mac OS X應用程序通過需要flash的WebView打開一個網頁。如果用戶沒有安裝Flash,我想給他們一個彈出窗口,告訴他們請安裝Flash。Mac OS X檢查是否安裝了閃存

如果安裝了flash插件,有辦法檢查webview嗎?在WebPreferences中,您可以啓用/禁用PlugIns,但我找不到查詢當前安裝/啓用的方法。

感謝您的任何幫助。

回答

2
  1. 您可以通過shell命令檢查安裝的Flash版本:/usr/libexec/PlistBuddy -c 'Print CFBundleVersion' /Library/Internet\ Plug-Ins/Flash\ Player.plugin/Contents/Info.plist

  2. 蘋果已經提供JavaScript code to detect plugins on a variety of browsers。如果您有此文件,可使用以下重定向至Flash網站或彈出式窗口:detectFlash("http://www.site.com/flashcontent","http://www.site.com/noflash")

  3. 每@布賴恩Kyle的指教,有可能在navigator.plugins檢查閃光燈:

var pluginCount = navigator.plugins.length; 
for(var i = 0; i < pluginCount; i++){ 
    if(navigator.plugins[i].name=="Shockwave Flash") { 
    document.write("Flash version " + navigator.plugins[i].version); 
    break; 
    }; 
}; 
5

您可能可以編寫一些JavaScript來執行檢查並通過WebView的窗口對象執行它。爲此,您需要閱讀JavaScript的navigator對象,特別是navigator.plugins