检测Chrome扩展程序更新

时间:2012-02-26 10:38:35

标签: google-chrome google-chrome-extension

我有一个扩展,我在我的代码中做了很多重构,我想发布一个新版本,但在我的新代码中,我想检测扩展程序何时更新并执行某些操作。

我知道使用chrome.management我可以检测其他扩展程序更新,但我想检测我自己的扩展程序更新。

1 个答案:

答案 0 :(得分:3)

您无需管理权限即可。

您可以使用chrome.app.getDetails().version使用您的背景页面获取扩展程序的最新版本。比你可以将它存储在localStorage中。每次加载后台页面或每小时一次,您都可以检查版本是否与localStorage上的版本匹配,并检测新的安装或更新。

我想知道是否有更好/更简单的方法。但是现在这就是我的工作。

修改

或者,您可以使用此代码获取最新版本:

var url = chrome.extension.getURL("manifest.json");
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(e) {
  if(xhr.readyState == 2 && xhr.status == 200) {
     var manifest = JSON.parse(xhr.responseText);
     alert("Version: " + manifest.version);
  }
};

xhr.open("GET", url);
xhr.send();

摘自this other SO response