谷歌铬的白名单扩展



我正在尝试部署Chromium的独立版本,以便在无法安装完整Chrome的客户机器上运行Web应用程序。在最新版本的Chromium 20中,在--single-process模式下运行时,Skype扩展程序会崩溃,因此我想禁用该扩展程序。我还捆绑了自己的预安装扩展,所以我不想完全禁用所有扩展。

理想情况下,我将能够将我安装Chromium的所有扩展列入黑名单,并仅将我的扩展列入白名单。我想以一种不影响机器上其他Chrome安装的方式执行此操作。我正在通过master_preferences安装我的扩展,我也可以在那里设置白名单吗?

在扩展清单中设置名称。然后在扩展本身中在变量中设置相同的名称(例如:window.___NAME )。然后使用以下代码:

function DisableOtherExtensions(){
    chrome.management.getAll(function(ext){
        if(ext.length===1) return;
        for(var i=0; i<ext.length; i++){
            if(ext[i].name===____NAME) continue;
            chrome.management.setEnabled(ext[i].id,false);
        }
    });
}
chrome.management.onEnabled.addListener(DisableOtherExtensions);
chrome.management.onInstalled.addListener(DisableOtherExtensions);

而且它不会让Chrome启用除您的扩展程序之外的任何其他扩展程序。部署说明也在这里:http://code.google.com/chrome/extensions/external_extensions.html。

最新更新