通常,瀏覽器每隔幾個小時檢查一次擴展更新,您可以通過單擊「立即更新擴展」按鈕手動覆蓋此更新。我想使這個無縫,讓我的擴展能力更新一個可用的時刻。通過Ajax,它檢查值得服務器並知道更新可用。我想讓他們告訴瀏覽器更新它。這可能嗎?有沒有辦法讓打包的託管chrome擴展請求chrome更新它?
這是一個打包的擴展,是在外部託管:http://developer.chrome.com/dev/extensions/hosting.html
UPDATE:這是工作的代碼!
的index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hello World</title>
<link href="styles/main.css" rel="stylesheet">
<script src="test.js"></script>
</head>
<body>
<h1>Hello, World 2 again 17!</h1>
</body>
</html>
test.js(偵聽文件點擊並告訴背景內容腳本來更新)
window.onload = function()
{
document.body.onclick = function()
{
chrome.runtime.requestUpdateCheck(function(status) {
if (status == "update_available") {
console.log("update pending...");
} else if (status == "no_update") {
console.log("no update found");
} else if (status == "throttled") {
console.log("Oops, I'm asking too frequently - I need to back off.");
}
});
}
}
main.js(後臺腳本)
//You need to put reload in this callback
chrome.runtime.onUpdateAvailable.addListener(function(details) {
console.log("updating to version " + details.version);
chrome.runtime.reload();
});
可能重複[?如何強制從擴展本身Chrome擴展程序自動更新](http://stackoverflow.com/questions/7742059/how-to-force- a-chrome-extension-autoupdate-from-the-extension-itself) – KingCronus
@KingCronus它不是重複的。 Mine是一個自我託管的打包應用程序。它不是由Chrome網上應用店提供的,所以問題/答案不適用。 –