Chrome MV3 扩展中的三个状态

2026年8月8日3 次浏览来源:Dev.to阅读原文

我以为我有一个设置错误。

我实际上有三种不同的状态 假装是一个布尔。

在建立 Chrome Manific V3 电子邮件跟踪器时, 我期望有一个简单的流程: 在设置中您翻转 Gmail, 扩展开始在 Gmail 中工作 。

这就是理论,无论如何。

问题出现在我测试第二个Chrome剖面时 我把Gmail放在我的主要档案里 Chrome Sync将这个偏好 推到另一个 但可选的许可并没有出现——主办方赠款直播于本地简介,从未同步.

第二号简介认为,Gmail是启用的,同时缺乏输入收件箱内容脚本或检查其DOM所需的主机赠款。

取决于你如何写出你的代码, 要么是无声的无声, 要么是无声的扩展, 也不是伟大的。

我一停下来写下来 照片就更清晰了 这里有三个独立的事物:用户想要启用的收件箱,主机访问Chrome已经在这个配置中实际授予,以及目前安装的动态DNR规则.

把它们折成一面旗是方便的.

亦错也.

清单是菜单,不是命令 扩展名下声明每个网络邮件来源 。

每个收件箱都会自己被激活,克罗姆只在用户开启特定集成时请求用户访问.

这是我必须内部化的一件事: 宣布一个可选的来源 本身毫无意义。

在现场赠款存在之前,该扩展没有为该收件箱注册内容脚本的业务,无法浏览其DOM,也无法通过自己的范围界定政策激活客户端范围限制规则。

干嘛要用每盒的提示?

多数是信任。

一个追踪器的阻断器 要求你所有的网络邮件 前方 看起来像它应该保护你的东西。

在您启用Gmail时询问Gmail—— 仅此而已—— 是一个容易告诉用户的故事,在商店审查时也不会造成伤害.

Chrome的文档推荐了这种 知情控制的可选权限。

文档中没有提到困难的部分,不过:通过取消权限,浏览器同步,以及服务员重启,使运行时间实际上保留了这一选择.

这是你的。

作为模板的包装规则 扩建船有两艘被包装的DNR规则,两艘都保持残废状态.

背景服务工作人员将高自信像素规则从只读模板中加载,并只将那些被克隆到扩展自有,客户端范围动态规则中.

识别的跟踪链接由内容脚本处理,而不是导航 DNR.

我想要的范围是: 在生成任何东西之前,扩展询问来源.

同步设置是意图 。

这不是当前主机赠款的证据,因此扩展不会激活该客户端.

生成的屏蔽规则只列出 .

中的允许和授予的网络邮件来源 。

如果Gmail是唯一被授权的收件箱,那么网络上其他地方的请求不会因为恰好符合跟踪器模式而被屏蔽.

同样的转换也释放出更高的优先级,允许用户明确列入白名单的追踪器域的规则。

重建一切,不要补丁 我的第一个本能是递增的:打开复选框,添加规则;关闭复选框,去掉规则.

它一直有效 直到现实介入。

一个权限从Chrome自己的扩展设置页面被取消.

设置通过同步到达 。

服务人员在两个州变化之间死亡。

多个许可和设置事件在彼此上方登陆.

更新后留下了上个版本所遗留的陈旧动态规则.

测试后一周内我撞到了大部分 所以扩展不再跟踪过渡.

在每起相关事件中,它都会重建当前状态下所期望的全部规则:禁用已包装的静态规则,读取扩展拥有的动态规则,检查当前的可选主机赠款,将任何未授予的都视为

分享