Flutter 微信登录一直提示「包名不对」:先清微信缓存

开放平台包名和签名都改对了仍提示包名不对时,多半是微信 App 缓存了旧的包信息;清缓存或重装微信后再试。

做 Flutter App 接入微信登录时,我踩过一个很「玄」的坑:开放平台里的包名、应用签名都核对过了,客户端也改完了,一调起登录还是提示:

包名不对,请检查包名是否与开放平台填写一致

第一反应是自己填错了。于是反复查 applicationId / Bundle ID、重新打签名、重新上传签名到微信开放平台——还是同一句报错。

原因

问题不在配置「当前对不对」,而在微信客户端会缓存应用的包名/签名/AppID 等信息。如果你第一次调起登录时配置是错的(或中间改过),微信可能一直用缓存里的旧信息做校验。你这边改对了,微信那边还以为你是旧包。

解决步骤

  1. 再确认一遍:开放平台填写的包名、签名,与当前安装包完全一致(含大小写、包名后缀)。
  2. 清除微信的缓存(清应用缓存即可,不必动聊天记录)。若不确定怎么清,最省事的办法是直接重装微信 App。
  3. 重装/清缓存后,再安装你的测试包,重新走一遍登录调起。

按这个顺序做完,我这边就能正常调起微信登录了。

补充排查

  • 调试包和正式包签名不同:开放平台要分别登记,或保证当前安装包用的就是已登记的那套签名。
  • Android 多渠道/多 applicationId:开放平台登记的必须是最终安装到手机上的那个包名。
  • iOS 注意 Universal Link / URL Scheme 是否一并配齐;本条报错更常见于 Android 包名/签名校验。

为何记下

一人做 App,微信登录这类第三方能力往往「配置对了也不立刻生效」。遇到「配置明明对了却一直报包名不对」,优先怀疑客户端缓存,比重装工程、反复改签名省时间得多。调试第三方 SDK 时:改配置 → 清对方缓存/重装对方 App,应写进自己的检查清单。

No comments yet