gro*_*wse 153 google-chrome-extensions
我在 4 个不同的工作站上使用 Chrome,并且我的扩展程序在所有工作站上同步。
我遇到的问题是,如果你有一个真正的鼠标,其中一个扩展(Gestures for Chrome)效果很好,但在 Ubuntu 上的触控板上,它只是妨碍了。
如果我在 Ubuntu 机器上禁用它,由于其内部同步机制,它会在所有 Chrome 安装上被禁用。
问:我可以在一台机器上有选择地禁用扩展吗?
avi*_*irk 89
可能这不是你要找的,但你可以试试这个。单击右上角的三线/扳手图标,打开Chrome 中的设置菜单。现在打开高级同步设置..
现在选择选项选择要同步的内容,然后取消标记扩展选项。现在您的扩展程序将不会与其他 PC 同步。
WOR*_*MSS 60
您可以将想要的扩展安装为本地扩展。
查找你想要的扩展的IDchrome://extensions
以使开发者模式。
导航到您的 Google 安装目录。Windows: %localappdata%\Google\Chrome\User Data\Default\Extensions\
{Extension_ID} \
{Version_Number}
将它保存在某个地方.. 用户目录可能吗?
返回chrome://extensions
与开发模式下启用,然后按Load unpacked extension
。并导航到扩展的新副本。
您现在应该看到您有两次扩展名。禁用真正的扩展名。
我说禁用是因为这种方法有一个不好的一面,那就是你会丢失自动更新,每次更新时你都需要一遍又一遍地重复上述步骤。
如果您不确定哪个是真实副本和新副本,请查看 ID 标签下的Loaded from: {Path_To_Your_Copy}
nix*_*xda 28
基于安全问题,Chrome 不会同步任何包含 NPAPI 插件的扩展程序。
在 NPAPI 插件中运行的代码具有当前用户的完全权限,并且不会以任何方式被谷歌浏览器沙盒化或屏蔽恶意输入。在处理来自不受信任来源的输入时,您应该特别小心,例如在处理内容脚本或 XMLHttpRequest 时。
如果我们以 Chrome 使用 NPAPI 识别扩展程序的方式修改您的扩展程序,您应该没问题。
首先,您需要来自任何 NPAPI 扩展(如Screen Capture (by Google))的虚拟 .dll 。该扩展程序同时从 Google Play 商店中删除,因为Google 决定放弃 NPAPI 支持。但这对我们的场景来说并不重要。幸运的是,官方 Screen Capture wiki仍然包含源代码。我们不需要完整的扩展名,只需要 NPAPI .dll screen_capture.dll
。直接下载
其次,转到不应同步的扩展文件夹。在你的情况下,Chrome 的手势。
..\profile\Default\Extensions\jpkfjicglakibpenojifdiepckckakgk\1.12.1_0
修改manifest.json文件并添加 NPAPI 插件,如 Stackoverflow上所述,甚至在developer.chrome.com 上更好
{
"name": "My extension",
...
"plugins": [
{ "path": "screen_capture.dll" }
],
...
}
Run Code Online (Sandbox Code Playgroud)修改您不想同步的扩展的background.html文件,也在上面的 Stackoverflow 答案中进行了描述。
<embed type="application/x-my-extension" id="pluginId">
<script>
var plugin = document.getElementById("pluginId");
var result = plugin.myPluginMethod(); // call a method in your plugin
console.log("my plugin returned: " + result);
</script>
Run Code Online (Sandbox Code Playgroud)它可能需要重新启用NPAPI支持,通过在未来chrome://flags/#enable-npapi
从这里你就靠自己了。我对扩展编码了解不够。
这就是为什么它是一个理论:)
Har*_*tha 13
我发现的另一个解决方案是使用 Chrome 中包含的策略机制。Google 提供了通过组策略管理扩展程序的可能性。通过将不需要的扩展名列入黑名单,我们有效地删除了这台 PC 的同步。我们可以通过手动设置这些选项来利用这些知识。
以下是 Windows PC 的简短说明:
对于 Linux 操作系统:
/etc/opt/chrome/policies/managed/policies.json
如果文件不存在,则创建该文件 /etc/opt/chrome/policies/managed/policies.json
使用您喜欢的文本编辑器打开文件{"ExtensionSettings": { "PUT EXTENSION ID HERE": { "installation_mode": "blocked" } }
通过这样做,扩展程序将在您下次启动 Chrome 时被删除。这只会影响您所在的 PC。我通过全新安装 Chrome 来检查这一点。登录后,所有扩展程序都已加载 - 特别是我们在另一台 PC 上列入黑名单的扩展程序。
可以在此处找到此策略设置的文档,其中还显示了不同操作系统的设置:
https://dev.chromium.org/administrators/policy-list-3#ExtensionInstallBlacklist
编辑 1: 添加了对 Linux 的描述(感谢评论中的 sherbang)
编辑 2: 如 Matt Scully 所示,文档的更新 URL:https : //cloud.google.com/docs/chrome-enterprise/policies/?policy=ExtensionInstallBlacklist
小智 7
对我有用的一件事是每次 Chrome 开始使用 Chrome 任务管理器时手动终止插件的进程。这可以通过以下方式实现:
然后只需单击您不想运行的扩展程序,然后单击“结束进程”。
在工作时,我有两台电脑,我不希望两台电脑上都出现谷歌视频群聊。唯一不好的是每次启动chrome时都必须这样做。
这不是一个坚决的答案,而是另一个审视问题的前景。
Chrome同步系统不允许以任何方式,单机自定义评分;任何带有额外扩展的解决方案,disable/enable
在您的扩展中使用标志运行,都将失败!
因为同时使用相同用户帐户的另一台机器会反映更改。
避免这种信息交换的一种方法是他建议@avirk禁用扩展同步,但该解决方案似乎不适合您的环境。
然后我再提出两个想法,可以采用这些想法来获得所需的结果:
另一个建议不太传统,可能被认为是一个糟糕的黑客,但我会以各种方式描述它,以便您有更广泛的选择。
.config/google-chrome/Default/Extensions/jpkfjicglakibpenojifdiepckckakgk/versionfolder
并将内容清除到文件“background_page.html”中这会在加载页面时生成异常,这将不允许扩展中的事件代码正确运行。 因此,我们将对此扩展进行本地禁用。
请记住,每次收到扩展的新更新时,都必须在新版本文件夹中重新执行此操作。
小智 5
这是一个简单的解决方案(考虑到您有 19 个扩展并且只有一个或两个有问题):在每台计算机上首次安装后:
这基本上保留了用户中的所有扩展名,您可以为每台计算机手动编辑它们。
虽然我不得不承认以前的答案更有趣,但这解决了您的问题,而无需精通技术。
干杯!
归档时间: |
|
查看次数: |
78352 次 |
最近记录: |