2016-09-25 144 views
0

是否可以在Mac擴展塢中爲我正在處理的Chrome擴展插入圖標。從Mac Dock啓動Chrome擴展程序

下面是擴展代碼僅供參考。 manifest.json的:

{ 
    "manifest_version": 2, 

    "name": "Habitica", 
    "author": "Sam Dale", 
    "description": "A launcher to quickly get to Habitica. Especially great for Mac users.", 
    "version": "1.0", 
    "icons": {"16": "habitica-logo-16.png", "128": "habitica-logo-128.png", "300": "habitica-logo-300.png"}, 

    "browser_action": { 
     "default_icon": "habitica-logo-128.png", 
     "default_title": "Habitica" 
    }, 
    "background": { 
     "scripts": ["background.js"], 
     "persistent": false 
    } 
} 

background.js:

chrome.browserAction.onClicked.addListener(function(tab) { 
    chrome.tabs.create({ url: "https://habitica.com/#/tasks" }); 
}); 

回答

0

沒有API與碼頭進行交互。所以,沒有簡單的方法。

我可以想到幾個複雜的方法來做到這一點,但總的來說,我會建議避免這種想法。

  1. 人們可以將快捷方式添加到一個不存在的網頁,比如說,https://launch-my-awesome-extension.horse/,並與webRequest API攔截它。一個不能用一個鏈接到一個Chrome擴展頁面

    注意迴避webRequest要求:這樣的鏈接可能會被忽略,如果你嘗試通過快捷方式打開它們由於chrome-extension://頁提升的權限。

  2. 編寫一個伴隨原生應用程序,並使用Native Messaging API以及所有常見後果。

    併發症:Chrome只能啓動本地消息傳遞,你不能啓動一個應用程序來告訴Chrome的東西;所以當你點擊停靠欄圖標時,必須有一些常駐組件已經啓動。

兩者都很麻煩,不是一個好主意。

+0

感謝您的詳細解答。 – Sam