Как определить расширение в браузере?

Я пытаюсь определить, установлено ли расширение в браузере пользователя.

Я попробовал это:

var detect = function(base, if_installed, if_not_installed) {
    var s = document.createElement('script');
    s.onerror = if_not_installed;
    s.onload = if_installed;
    document.body.appendChild(s);
    s.src = base + '/manifest.json';
}
detect('chrome-extension://' + addon_id_youre_after, function() {alert('boom!');});

Если в браузере установлено расширение, я получу сообщение об ошибке:

Ресурсы должны быть перечислены в ключе манифеста web_accessible_resources, чтобы их могли загружать страницы за пределами расширения.

GET chrome-extension: // неверный net :: ERR_FAILED

Если нет, я получу другую ошибку.

GET chrome-extension: //addon_id_youre_after/manifest.json net :: ERR_FAILED

Вот изображение ошибок, которые я получаю:

Я пытался отловить ошибки(Скрипка)

try {
  var s = document.createElement('script');
    //s.onerror = window.setTimeout(function() {throw new Error()}, 0);
    s.onload = function(){alert("installed")}; 
    document.body.appendChild(s);
    s.src = 'chrome-extension://gcbommkclmclpchllfjekcdonpmejbdp/manifest.json';
} catch (e) {
  debugger;
  alert(e);
}

window.onerror = function (errorMsg, url, lineNumber, column, errorObj) {
    alert('Error: ' + errorMsg + ' Script: ' + url + ' Line: ' + lineNumber
    + ' Column: ' + column + ' StackTrace: ' +  errorObj);
}

Пока я не могу отловить ошибки ..
Любая помощь будет оценена

Ответы на вопрос(1)

Ваш ответ на вопрос