什么是 Chrome flag?

Chrome 标志是一种用于启用默认情况下不可用的浏览器功能的方法。

借助 Chrome 画中画功能,用户可以在一个标签页中继续观看视频,同时在另一个标签页中处理工作。

例如,Chrome 希望先让用户试用画中画视频功能,然后再面向所有用户发布。

该功能通过标志提供,因此任何用户都可以试用并提供反馈。我们根据反馈对代码和设计进行了测试和优化。现在,您可以在 Chrome 中默认使用画中画功能,而且效果非常出色。

了解相关风险

大多数 Chrome 用户永远不需要使用 Chrome 标志

如果您确实设置了 Chrome 标志,请务必小心。启用或停用功能可能会导致您丢失数据,或者有损您的安全或隐私。您通过标志切换的功能可能会停止运行或被移除,且不会另行通知。

如果您是企业 IT 管理员,则不应在正式版中使用 Chrome 标志。请改为查看企业政策

...并谨慎操作

尽管如此,如果您是需要试用新技术的 Web 开发者,或者只是好奇的极客,那么了解 Chrome 标志还是非常值得的。

有许多不同类型的功能对应的标志。有些标志会影响 Chrome 的外观或运作方式,有些标志会启用新 JavaScript API 等功能。标志的可用性取决于您运行的 Chrome 版本。

设置 Chrome 标志的方法有两种:

  • 通过 chrome://flags 页面。
  • 通过在终端的命令行中打开 Chrome。

chrome://flags

如需在 Chrome 的 chrome://flags 页面中设置标志,您需要找到该标志,切换该标志的设置,然后重启浏览器。例如,如需为性能指标启用 Chrome 的平视显示屏,请执行以下操作:

  1. 搜索相应功能。 chrome://flags 页面,其中 HUD 标志已设为默认。

  2. 将值设置为启用已启用 HUD flag 的 chrome://flags 页面。

  3. 重新启动 Chrome。 更新标志后,Chrome 会提示您重新启动浏览器。

现在,您可以使用平视显示屏,查看有关网页性能的技术信息。

已启用平视显示屏的 Chrome 页面。

命令行标志

如果您是一名 Web 开发者,则可能需要通过命令行打开 Chrome 来设置标志。您可以运行该命令来打开 Chrome,然后添加要设置的标志。您可以通过命令行配置的 Chrome 设置比 chrome://flags 上提供的更多。

例如,如需在 Mac 上的终端中运行 Chrome Canary,并启用 Topics API 并将历元长度设置为 15 秒,请使用以下命令:

/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary
--enable-features=BrowsingTopics:time_period_per_epoch/15s,PrivacySandboxAdsAPIsOverride,PrivacySandboxSettings3,OverridePrivacySandboxSettingsLocalTesting  

还有数百个其他标志,用于启用、停用和配置不太为人所知的功能。

如果您经常使用带有命令行标志的不同 Chrome 渠道,则可能需要为每个渠道创建一个函数,并将这些函数添加到 shell RC 文件中。例如,在 macOS 上:

  1. 打开终端。
  2. 创建函数:cf(){ open -a 'Google Chrome Canary' --args $*; }
  3. 使用函数:cf --enable-features=TrackingProtection3pcd

设置 Chrome 用户数据目录

在 Chrome 工程语言中,Chrome 用户是指 Chrome 的个人用户。

Chrome 客户端是指设备上的单个 Chrome 安装。

更确地说,Chrome 客户端对应于单个用户数据目录。每个 Chrome 个人资料都存储在用户数据目录下的子目录中。

如果您通过命令行运行 Chrome,则可以使用 --user-data-dir flag 设置用户数据目录。

这意味着,您可以为开发创建一个单独的用户数据目录,并在其中包含自己的配置文件子目录。创建新的用户数据目录后,Chrome 的行为会像刚安装一样,这有助于调试与配置文件相关的问题。

如需使用新的临时用户目录从命令行运行 Chrome,请使用以下标志:

--user-data-dir=$(mktemp -d)

您可能还需要添加以下标志,以避免浏览器检查和首次运行界面:

--no-default-browser-check --no-first-run

注意标志冲突

您设置的标志可能会相互冲突。chrome://flags 设置会替换同一标志的命令行设置,在某些情况下,chrome://flags 设置的默认值可能会替换您的命令行配置。如果您通过命令行运行 Chrome 时设置的标志未按预期运行,您应检查 chrome://flags 页面。

chrome://flags 不反映从命令行设置的标志。请改为查看 chrome://version 页面。Command Line(命令行)部分显示标志设置。

Chrome Canary 中的 Chrome 版本页面,其中突出显示了“命令行”部分。

试用实验性功能的其他两种方式

您可以通过切换 chrome://flags#enable-experimental-web-platform-features 标志来启用一系列没有自己标志的实验性功能。新功能的文档将说明何时可以使用此选项。

Chrome Beta 版中,您可以通过切换实验设置并重新启动浏览器,试用精选实验并提供反馈。如需了解详情,请参阅在 Chrome 中测试实验性功能

Chrome Beta 版中的实验界面,显示了标签页滚动选项。

哪些功能会带有标志?

并非所有实验性功能都有自己的 Chrome 标志:

  • 某些功能只有在 Chrome Canary 中发布后才会推出,在此之前无法通过标志启用。这种情况非常少见。
  • 对于工作量不超过 1-2 个季度的“较小”功能,您可以通过启用以下标志来提供实验性功能:
    chrome://flags#enable-experimental-web-platform-features
    这会启用多项次要功能。
  • 主要功能可供使用 chrome://flags 或命令行开关搭配特定于该功能的标志进行实验。

Chrome 设置如何?

Chrome 设置和 Chrome 标志的用途不同。

借助 Chrome 标志,用户可以启用或停用实验性功能,而通过 chrome://settings 中的选择,用户可以自定义默认功能的使用体验。

初始试用怎么样?

源试用是一种可供开发者大规模测试新功能或实验性 Web 平台功能的方法。在该功能面向所有用户推出之前,开发者可以向 Web 标准社区提供反馈。

在所有为该试用提供有效令牌的网页上,系统都会启用正在进行源代码试用的功能。这样,网站所有者就可以为其所有用户启用实验性功能,而无需用户更改浏览器设置或设置标志。相比之下,Chrome 标志允许个人用户在他们访问的所有网站上启用或停用实验性功能。

了解详情