2015-11-11 227 views
1

即使以冒險的方式,是否可以爲現有的擴展程序創建擴展名?或猴子補丁現有的擴展?擴展程序上的Chrome擴展程序?

我希望對非開源的chrome擴展做一些簡單的可用性更改。

+0

也許chrome:// flags /#extensions-on-chrome-urls –

+0

'#extensions-on-chrome-urls'標誌[允許](https://code.google.com/p/chromium/codesearch#鉻/ src/extensions/common/user_script.cc&sq = package:chromium&l = 66&rcl = 1447259195)chrome:// urls但不是chrome-extension:// urls(有一個'canExecuteScriptEverywhere'參數,但它只適用於內置Chrome的東西,如'PermissionsData :: CanExecuteScriptEverywhere'函數所示)。我已經將'debugger'方法添加到了答案中,該方法顯然是唯一的「有用」方法(持久通知標題使其無法使用)。 – wOxxOm

回答

2

Chrome擴展程序無法訪問其他具有chrome-extension://地址(工具欄彈出窗口,頁面操作彈出窗口,選項頁面,背景頁面)的擴展的內部頁面,也無法訪問其他擴展的內容腳本。

唯一可能影響另一個擴展(暗示它不期望來自另一個擴展的external connection)的情況是另一擴展依賴於DOM事件和消息,這是它的範圍。

雖然有一個可疑的方法:使用debugger API可以在另一個擴展的上下文中執行代碼,更改其變量等。但是一個大通知將在瀏覽器中顯示的每一頁上:

enter image description here

+0

我明白爲什麼在Chrome設計中禁用這個功能儘可能的簡單,但我真的找不到在基於Chromium禁用它的任何推理。除非今天有一些合理的方法嗎? – zakius