Обнаружение сбоев плагина FLASH - PullRequest
8 голосов
/ 25 июля 2010

Есть ли способ обнаружить сбои flash-плагина в основных браузерах (firefox, т.е. chrome, safari и opera) через javascript?

Ответы [ 4 ]

9 голосов
/ 09 сентября 2010

Я не уверен, работает ли это или нет.Вы можете периодически получать ссылку на флэш-объект и проверять, есть ли у него метод SetVariable.

function checkFlashCrashed() {
   try {
      var tmp = document.getElementById("flashObjectId").SetVariable;
      if(!tmp) {
         alert("Flash crashed");
         return;
      }
   } catch (e) {
      alert("Flash crashed");
      return;
   }
   setTimeout(checkFlashCrashed, 1000); // check it out every one second
}

SetVariable - это интерфейсная функция, которую можно вызывать из кода Javascript.Если происходит сбой флэш-памяти, ее интерфейс тоже должен падать.Следовательно, это может быть решением.

2 голосов
/ 16 июля 2011

Использование глобальной обработки исключений в ActionScript для вызова внешнего интерфейса в UncaughtErrorEvent.UNCAUGHT_ERROR.

Если во время выполнения Flash Player возникает ошибка, она может перехватить исключение и дать сигнал JavaScript.

0 голосов
/ 30 марта 2012

Зависит от того, что вы думаете о ложных срабатываниях.

У вас может быть сторожевой таймер, который выполняет вызов ajax «Вспышка не разбилась», если кажется, что вспышка все еще работает. И предположим, что вспышка разбилась, если не написано. Это создаст ложные срабатывания, если пользователь закроет страницу перед проверкой.

У вас может быть сторожевой таймер, который делает ajax-вызов «Сбой вспышки», если кажется, что вспышка не работает. Это будет пропускать сбои, такие как сбои, которые убивают весь браузер с ним.

Может быть, у вас могут быть оба сторожевых пса, чтобы вы могли лучше понять, что происходит.

0 голосов
/ 09 сентября 2010

Может быть, вы могли бы использовать скрипт поддержки активности в вашем файле as3, который общается со страницей js, если js не получает вызов в течение нескольких секунд, вы можете использовать его для тайм-аута и обработать его как сбой флэш-памяти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...