问题现象

使用未经 Google 官方签名的 Chromium 构建版本(如 ungoogled-chromium、社区编译版等),每次启动时浏览器顶部或地址栏下方会出现黄色提示条:

缺少 Google API 密钥,因此 Chromium 的部分功能将无法使用。

这个提示不影响正常浏览,但很碍眼。根本原因是 Chromium 编译时没有嵌入 Google 的 API 密钥(用于调用 Google 账号登录、同步、地理位置等 Google 服务)。


解决方案

通过设置三个环境变量,告诉 Chromium “不需要这些密钥”,即可消除提示。

Windows

CMD(管理员) 中执行:

setx GOOGLE_API_KEY "no"
setx GOOGLE_DEFAULT_CLIENT_ID "no"
setx GOOGLE_DEFAULT_CLIENT_SECRET "no"

setx 会写入用户级环境变量,重启 Chromium 后生效。

如果使用 PowerShell,可以用:

[Environment]::SetEnvironmentVariable("GOOGLE_API_KEY", "no", "User")
[Environment]::SetEnvironmentVariable("GOOGLE_DEFAULT_CLIENT_ID", "no", "User")
[Environment]::SetEnvironmentVariable("GOOGLE_DEFAULT_CLIENT_SECRET", "no", "User")

Linux

编辑 ~/.bashrc~/.profile,追加:

export GOOGLE_API_KEY="no"
export GOOGLE_DEFAULT_CLIENT_ID="no"
export GOOGLE_DEFAULT_CLIENT_SECRET="no"

立即生效:

source ~/.bashrc

如果使用 Wayland 或通过 .desktop 文件 启动 Chromium,也可以在启动命令中直接传入:

chromium-browser \
  --google-api-key="no" \
  --google-default-client-id="no" \
  --google-default-client-secret="no"

或者在 .desktop 文件的 Exec 行追加这些参数:

Exec=chromium-browser --google-api-key="no" --google-default-client-id="no" --google-default-client-secret="no" %U

原理说明

Chromium 源码中,以下三个常量用于调用 Google API:

环境变量 用途
GOOGLE_API_KEY Google API 调用密钥(地图、翻译、Safe Browsing 等)
GOOGLE_DEFAULT_CLIENT_ID OAuth 客户端 ID(账号登录)
GOOGLE_DEFAULT_CLIENT_SECRET OAuth 客户端密钥(账号登录)

官方 Chrome 在编译时内置了这些值。社区版 Chromium 没有,因此启动时检测到为空就会弹出警告。

设置为 "no" 后,Chromium 内部判断为"用户明确不需要",跳过警告。


副作用

设置后,以下功能会不可用(但大多数用户在国内也用不了):

  • ❌ Google 账号登录 / 同步
  • ❌ Google Safe Browsing(安全浏览)
  • ❌ Google 地理位置服务
  • ❌ Chrome Web Store 登录
  • 正常浏览不受任何影响

如果你需要使用这些功能(例如登录 Chrome 同步书签),可以申请自己的免费 API 密钥(仅限非商用),参考 Chromium Dev Docs


Professional English Terms

Term Meaning
API Key API 密钥,用于服务调用的身份凭证
OAuth Client ID / Secret OAuth 客户端标识与密钥,用于第三方授权登录
Ungoogled Chromium 去 Google 依赖的 Chromium 发行版
Safe Browsing Google 安全浏览服务(恶意网站检测)
Environment Variable 环境变量,操作系统级别的键值对配置