今天发现谷歌Chrome浏览器更新了,然后打开浏览器后发现大批插件失效,显示“此扩展程序不再受支持”并被停用了。
查了下发现是谷歌正在淘汰旧的 Manifest V2 (MV2) 扩展协议,强制开发者转向新的 Manifest V3 (MV3)。虽然官方的初衷是为了安全,但这也导致了如uBlock Origin之类的许多未更新的经典扩展程序无法使用。
去插件开发者github和各个论坛找了下解决方法,发现目前还有两种方法可以让这些插件继续使用,于是给大家分享下。
方法一:修改实验性选项(临时方案)
这个方法最简单,直接在浏览器中设置即可。但缺点是谷歌随时可能在未来的更新中移除这些选项,因此只能算是临时措施。
步骤:
在 Chrome 地址栏输入下方文字并回车。找到并启用(Enabled)以下选项:
chrome://flags/#temporary-unexpire-flags-m137
然后重启浏览器。重启后回到 chrome://flags 页面,再禁用 (Disabled) 以下三个选项:
chrome://flags/#extension-manifest-v2-deprecation-warning
chrome://flags/#extension-manifest-v2-deprecation-disabled
chrome://flags/#extension-manifest-v2-deprecation-unsupported
最后启用 (Enabled) 下面这个选项:
chrome://flags/#allow-legacy-mv2-extensions
然后再次重启浏览器,使得设置生效
完成这些步骤后,你会发现那些被停用的 MV2 扩展已经可以启用来重新工作了。
方法二:修改系统策略(更稳定的“续命”方案)
相比于实验性选项,通过修改系统策略(Windows 的注册表或 macOS 的配置文件)来恢复 MV2 支持,效果可能会更稳定,不会因为浏览器的小版本更新而轻易失效。
Windows 操作指南:
- 按下 Win + R 键,输入 regedit,打开“注册表编辑器”。
- 在地址栏粘贴并跳转到以下路径: 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies
- 在 Policies 上右键,选择“新建” -> “项”,命名为 Google。
- 同样地,在 Google 上右键,新建一个名为 Chrome 的项。
- 选中 Chrome 项,在右侧空白处右键,选择“新建” -> “DWORD (32 位) 值”。
- 将这个新值重命名为 ExtensionManifestV2Availability。
- 双击 ExtensionManifestV2Availability,将其“数值数据”从 0 修改为 2,然后点击“确定”。
- 最后,打开 Chrome,在地址栏输入 chrome://policy/,点击“重新加载政策”即可。
macOS 操作指南:
- 打开“终端” (Terminal) 程序。
- 复制并执行以下命令:
sudo tee /Library/Managed\ Preferences/com.google.Chrome.plist >/dev/null <<EOF <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>ExtensionManifestV2Availability</key> <integer>2</integer> </dict> </plist> EOF
- 执行完毕后,重启你的 Mac 或至少重启 Chrome 浏览器。
- 同样,在 Chrome 地址栏输入 chrome://policy/ 并点击“重新加载政策”来确认策略生效。
需要了解的是,以上所有方法都只是138版本的“续命”手段。谷歌推进 MV3 协议的决心非常坚定,这些“后门”总有一天会被彻底关闭。
因此,最根本的解决方法是:
- 寻找替代品: 寻找你常用扩展的 MV3 版本,例如 uBlock Origin 的开发者就推出了基于 MV3 的 uBlock Origin Lite 版本(不过切换的话拦截规则得重新搞了)。
- 更换浏览器: 如果你依赖的扩展实在没有替代品,也可以考虑迁移到对扩展支持更灵活的浏览器,如 Firefox。
参考:
CHROME “这些扩展程序不再受支持,因此已停用” 解决办法
ExtensionManifestV2Availability 控制 Manifest V2 扩展程序的可用性
https://github.com/uBlockOrigin/uBlock-issues/discussions/2977
最后提供一个旧版插件下载工具:https://robwu.nl/crxviewer/
9月12日更新:浏览器自动更新到了140版本,需要用其他方法再次修改
打开 chrome 浏览器,访问 chrome://flags
将 Temporarily unexpire M138 flags , Temporarily unexpire M139 flags设置为 Enabled,然后重启
再将 Allow legacy extension manifest versions 设置为 Enabled
关闭所有谷歌浏览器,然后在桌面的chrome 快捷方式的目标内容文字后空一格添加 --disable-features=ExtensionManifestV2Unsupported,ExtensionManifestV2Disabled
如图
然后点击应用,之后双击这个图标打开的浏览器就可以继续使用Manifest V2的扩展了。
图片类文章文中图有压缩,如果底部有下载地址的话原图就在图包里(・ω・`。),没有下载的话就没有图包。
向 ACG17z 公众号发送“p站上不去”查看上PIXIV方法吧
