You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native安卓应用更新后Google Play仍分发旧版本问题咨询

解决React Native安卓应用Google Play分发旧APK的问题

我帮不少开发者排查过这类Google Play版本分发不符的问题,结合你用React Native开发的场景,咱们一步步拆解可能的原因和解决办法:

第一步:确认本地版本配置完全正确

Google Play核心靠versionCode(整数)区分版本,versionName只是给用户展示的标识,所以先确保这两处没出错:

  • 打开android/app/build.gradle,检查defaultConfig里的versionCode必须比旧版本严格递增(比如旧版是1,新版要≥2),versionName同步更新(比如从1.0改成1.1)
  • 顺带确认项目根目录package.json里的version字段也同步修改,虽然不影响Google Play,但能避免打包脚本可能的关联问题

第二步:彻底清理缓存并重新打包

很多时候是本地构建缓存搞的鬼,按这个流程来:

  • 先运行Gradle清理命令:./gradlew clean,这个会彻底清除Gradle的构建缓存
  • 手动删除android/app/build文件夹(你已经做了这步,很好)
  • 如果是打AAB(Google Play现在推荐用AAB),运行:./gradlew bundleRelease;如果是打APK,运行:./gradlew assembleRelease
  • 打包完成后,去对应的输出目录(AAB在android/app/build/outputs/bundle/release,APK在android/app/build/outputs/apk/release)检查文件的创建时间,确保是最新的,没有复用旧文件

额外提示:如果担心JS bundle没更新,可以手动先执行一次:
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
再进行打包,确保最新的代码被打包进安装包

第三步:检查Google Play控制台的发布配置

这是最容易忽略的环节:

  • 确认你上传的新安装包(AAB/APK)已经完成Google Play的处理,状态从「正在处理」变成「已发布」(有时候需要等10-30分钟)
  • 检查发布轨道:是不是把新版本发布到了正确的轨道?比如你之前用生产轨道,这次别误传到测试轨道;如果设置了分阶段发布,只有部分用户能拿到新版本,需要切换到全量发布或者用测试账号测试
  • 核对版本号:在Google Play控制台的「版本管理」里,查看你上传的新版本的versionCode是不是和本地打包的完全一致,避免上传了旧文件却没发现
  • 如果开启了Google Play应用签名,确认上传的文件是用上传密钥签名的,且Google Play没有报错(签名错误会导致版本无法发布)

第四步:排除用户设备的缓存问题

有时候是用户的Google Play商店缓存了旧版本:

  • 让测试用户打开手机设置 → 应用 → Google Play商店 → 存储 → 清除缓存和数据,然后重新搜索下载
  • 或者用ADB命令直接安装本地打包的新APK:adb install -r 你的APK文件路径,排除商店缓存的干扰

额外排查:React Native特殊场景

如果你用了Code Push,虽然它是应用内更新,和Google Play的APK分发无关,但如果用户之前通过Code Push更新过JS代码,可能会混淆版本感知,不过你的问题是APK本身是旧的,所以这个大概率不是原因,但可以暂时禁用Code Push测试一下。


内容的提问来源于stack exchange,提问作者slipperypete

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:21:15