1

在我background.js文件我有以下代碼:Chrome擴展上下文菜單不堅持

chrome.runtime.onInstalled.addListener(function (info) { 
    chrome.contextMenus.removeAll(function() { 
     chrome.contextMenus.create({ 
      "title": "Blog this image", 
      "contexts": ["image"], 
      "id": "contextimagelink", 
      "onclick": onImageClickedHandler 
     }, function() { }); 
    }); 
}); 

的想法是,將擴展安裝或更新,以消除任何現有的上下文菜單我已經隨時之前設置並只安裝一個。

問題是,每次通過商店更新擴展名時,上下文菜單都會被刪除,但不會被重新安裝。我找不出一種方法來調試,或者爲什麼它發生。在開發過程中不會發生,只有在我發佈更新後更新擴展時纔會發生。

回答

2

chrome.runtime.onInstalledchrome.runtime.onStartup事件中添加上下文菜單。

對於示例代碼,看看https://github.com/Rob--W/crxviewer/blob/master/src/bg-contextmenu.js 在這種擴展,上下文菜單是一個可選的特徵,它的狀態是通過偏好控制經由chrome.storage API持續存在。
此外,還有一個open Chromium issueonInstalled事件處於隱身模式。我已經解決了這個問題https://github.com/Rob--W/crxviewer/blob/master/src/incognito-events.js

+0

我試過這個,只是更新了我的應用程序。不起作用。 –

+0

@wtfsven鏈接到你的源代碼? –

+0

https://chrome.google.com/webstore/detail/mcobficgnfpkmfggdmlbllhemkbaloop - 版本0.64應該在30分鐘左右。 –

相關問題