Mac OS X проверяет, установлена ​​ли флэш-память - PullRequest
4 голосов
/ 30 сентября 2011

Приложение Mac OS X открывает веб-страницу через WebView, для которой требуется флэш-память. Если у пользователя нет установленной флэш-памяти, я хотел бы дать ему всплывающее окно с просьбой установить флэш-память.

Есть ли способ проверить веб-просмотр, если установлен плагин flash? В WebPreferences вы можете включить / отключить подключаемые модули, но я не могу найти способ запросить текущие установленные / включенные.

Спасибо за любую помощь.

Ответы [ 2 ]

5 голосов
/ 30 сентября 2011

Вы можете написать некоторый JavaScript, который выполняет проверки, и выполнить его через объект окна WebView. Для этого вам нужно прочитать объект JavaScript navigator, в частности navigator.plugins.

2 голосов
/ 30 сентября 2011
  1. Вы можете проверить установленную версию Flash с помощью команды оболочки: /usr/libexec/PlistBuddy -c 'Print CFBundleVersion' /Library/Internet\ Plug-Ins/Flash\ Player.plugin/Contents/Info.plist

  2. Apple предоставила код JavaScript для обнаружения плагинов на различныхбраузеров .Если вы включите этот файл, то можно будет использовать перенаправление на сайт Flash или на ваше всплывающее окно: detectFlash("http://www.site.com/flashcontent","http://www.site.com/noflash")

  3. В соответствии с отличным предложением @Brian 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;
  };
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...