我尝试使用chrome.app.getDetails().version
在运行时获取我的扩展程序版本,并注意到chrome.app.getDetails()
返回null
。令人惊讶的是,在线社区没有谈论这个问题,谷歌人员甚至都没有记录这个功能。是否有我遗失的许可?我确实启用了tabs
。
答案 0 :(得分:4)
很老......我知道
但是,如果有人正在寻找此功能,您可以使用chrome.runtime
API和getManifest
方法将扩展程序版本读取清单文件。
实施例。在你的后台脚本中:
var manifest = chrome.runtime.getManifest();
var current_version = manifest.version;
console.info('Current Version: ', current_version);
返回的对象是完整清单文件的序列化,因此您可以获取manifest file
所以..如果你想要所有的而且只你的matches
的{{1}} ......说些什么......
content_scripts
注意:自Chrome 22以来稳定
答案 1 :(得分:2)
它没有记录,因为它们可能会将getDetails
移动到API的不同部分 - 请参阅this bug。它目前正在处理我的Chrome(测试频道)副本,但如果他们在新版本中禁用了它,我不会感到惊讶。在此期间,您只需执行AJAX查询即可获得扩展程序的manifest.json
- 您可以使用chrome.extension.getURL("manifest.json")
获取其URI。
答案 2 :(得分:0)
以下是我用来提取当前版本的内容。
var manifest = new XMLHttpRequest();
manifest.open("get", "/manifest.json", true);
manifest.onreadystatechange = function (e) { if (manifest.readyState == 4) {console.log(JSON.parse(manifest.responseText).version)} };
manifest.send({});