我目前正在尝试检测用户是否安装了某个 Chrome 扩展程序。Chrome 扩展程序不是我自己的,我没有它的源代码。我在许多帖子中尝试过方法,但都失败了。我尝试过的方法以及失败的原因详述如下。
这会在执行时导致“无法读取未定义的属性连接”:
var myPort=chrome.extension.connect('idldbjenlmipmpigmfamdlfifkkeaplc', some_object_to_send_on_connect);
尝试按如下方式加载扩展程序的资源以测试它是否存在,但在浏览器中转到此 URL 会导致“找不到您的文件”Chrome 错误页面(请注意,我通过转到 C:\Users\\ 找到了此路径AppData\Local\Google\Chrome\User Data\Default\Extensions\idldbjenlmipmpigmfamdlfifkkeaplc\1.0.0.1_0\ 在我的 Windows 本地机器上):
chrome-extension://idldbjenlmipmpigmfamdlfifkkeaplc/1.0.0.1_0/icon_16.png
使用 Chrome 管理,但这会导致执行时控制台错误“无法读取未定义的属性获取”
chrome.management.get("idldbjenlmipmpigmfamdlfifkkeaplc", function(a){console.log(a);});
我遇到的大多数其他答案似乎都涉及由试图检查它的同一个人编写的扩展。