kwgt 天气不更新 w 函数一直返回空或旧数据
常见症状
$w(temp)$一直返回空- 温度是对的但风向 / 体感温度不更新
- 小组件上的天气停留在几个小时前的数据
排查清单
1. Weather Provider 配置
kwgt 主界面 → 侧边栏 → Weather Provider:
- 选的数据源有没有填对 API Key?(OpenWeatherMap 需要)
- 定位方式:自动定位开了位置权限吗?还是手动经纬度填对了?
- 温度单位(摄氏 / 华氏)有没有选错?
2. API Key 问题(OpenWeatherMap 专用)
- Key 复制粘贴时不要有多余空格
- OpenWeatherMap 注册后有 1-2 小时的激活延迟——新建 Key 刚注册完可能不能立即用
- 免费 Key 的调用频率限制是每分钟 60 次,每天 1000 次——kwgt 刷新频率设低一点
3. 手动强制刷新验证
在 kwgt 主界面 → 侧边栏 → Weather Provider → 底部一般有一个手动刷新按钮(或进一次 kwgt 主界面就触发刷新):
- 手动点刷新后如果数据变成最新的 → 只是自动刷新没触发,检查系统后台保活
- 手动刷新还是空 → API Key / 数据源 / 网络问题
4. 定位权限
如果你用自动定位:
系统设置 → kwgt → 权限 → 位置 → 始终允许
如果权限没给到"始终允许",Weather 可能只有打开 kwgt 主界面时才能定位,后台不行。
5. 网络问题
- 某些数据源(Darksky)国内可能被墙 → 换 OpenWeatherMap 或 Yr.No
- 手机网络本身慢 / 断网 → Weather 不会刷新,保留上次数据(kwgt 不会报错)
快速切换验证
如果 OpenWeatherMap 一直有问题,换 Yr.No 试试(不需要 API Key,免费):
- Weather Provider → 选 Yr.No
- 填经纬度(去网上查你的城市经纬度)
- 手动刷新 → 看 w(temp) 有没有数据
Yr.No 有数据 → 说明 OpenWeatherMap 的 Key / 服务有问题Yr.No 也没数据 → 说明定位 / 网络权限有问题
刷新频率建议
不要把刷新间隔设太短(< 300 秒):
- Weather 数据不需要秒级更新
- 频繁刷新会耗电 + 触发 API 限流
- 推荐 1800 秒(30 分钟)或更长