更新(10/21): 重新验证后发现,TUN 模式真正生效时,不需要额外设置代理,直接打开 Antigravity 就能完成 OAuth 登录。我退出登录后重新授权测了一遍,v2rayN 日志里 Google 相关请求都走了 proxy。之前在评论里说「开不开 TUN 结果一致」是我判断错了,抱歉,正文已按验证结果更新。
记录一个 Antigravity 登录时遇到的坑,折腾了一会儿才定位到原因,发出来给遇到同样问题的佬友参考。
问题现象
点击登录后,浏览器里 Google OAuth 授权一切正常,也提示授权成功,但回到 Antigravity 后就是登录失败 / 没反应。
原因
排查后发现,失败的是 Antigravity 客户端自己发出的这个请求:
oauth2.googleapis.com/token
浏览器走了代理,所以授权页面没问题;但在系统代理模式下,Antigravity 客户端本身不走系统代理,换 token 这一步直接连 Google 就失败了。
方法一(推荐):开启 TUN 模式
TUN 在系统网络层接管流量,不依赖程序自己是否支持代理,所以开启后直接打开 Antigravity 就能正常登录。
以 v2rayN 为例,需要确认两点:
- v2rayN 以管理员身份运行(标题栏会显示「以管理员身份运行」),否则 TUN 网卡建不起来,开关打开了也不生效。
- Google 相关域名没有被路由规则分到直连。可以在点登录后看 v2rayN 日志,Google 相关请求(googleapis.com,或 142.250.x.x、172.217.x.x 这类 IP)后面应该是
proxy,不是 direct。
方法二:不开 TUN,用环境变量指定代理
不想让 TUN 全局接管流量的话,可以在启动 Antigravity 时通过环境变量给它指定代理。
以 v2rayN 为例,本地代理端口为 10808。打开 CMD,执行:
set HTTP_PROXY=http://127.0.0.1:10808
set HTTPS_PROXY=http://127.0.0.1:10808
start "" "C:\Users\admin\AppData\Local\Programs\Antigravity\Antigravity.exe"
启动后重新走一遍 OAuth 登录,就能正常登录了。
每次敲命令太麻烦,可以新建一个 Antigravity.bat:
@echo off
set HTTP_PROXY=http://127.0.0.1:10808
set HTTPS_PROXY=http://127.0.0.1:10808
start "" "C:\Users\admin\AppData\Local\Programs\Antigravity\Antigravity.exe"
以后直接双击这个 BAT 启动即可,也可以给它建个桌面快捷方式。
方法二的几点说明:
- 双击 BAT 前,务必彻底退出 Antigravity,包括任务管理器里的残留进程。如果它已经在运行,BAT 只会唤起旧窗口,环境变量不会生效,表现就是「能唤起页面但没反应」。
- 路径中的
admin 是我的 Windows 用户名,请换成你自己的;也可以直接写成 %LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe,默认安装无需修改。
- 如果 Antigravity 没装在默认目录,把路径改成实际安装位置即可。
- 端口要填 HTTP 代理 / 混合端口,纯 SOCKS 端口可能不行。新版 v2rayN 的
10808 是混合端口;旧版 10808 是 SOCKS、10809 才是 HTTP;Clash 系一般是 7890。不确定的话去客户端设置里看一下。
还是不行?
- 开了 TUN 还不行:先看 v2rayN 是不是管理员身份运行,再看日志里 Google 请求走的是
proxy 还是 direct。
- 用 BAT 还不行:确认已彻底结束 Antigravity 进程,再核对端口类型。
以上,希望能帮到遇到同样问题的佬友 ^-^