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

Flutter应用本地运行正常 上传Google Play内部测试后启动闪退

问题修复方案

1. App Bundle 拆分分发异常

如果你上传的是AAB格式安装包而非APK,Google Play会按设备架构、屏幕密度、语言拆分分发资源,本地安装完整APK不会触发资源缺失,从Play下载的拆分包则可能因为错误的资源收缩规则导致核心资源被移除。

  • 检查build.gradle中的shrinkResources配置,若开启了资源收缩,需在res/raw/keep.xml中明确保留所有运行时动态加载的资源。
  • 可使用bundletool工具本地模拟Play Store的拆分安装逻辑,提前验证拆分包可用性。

2. Play 应用签名不匹配

若你开启了Google Play应用签名服务,Play分发的APK签名和你本地打包的签名不一致,若应用内存在签名校验逻辑(第三方SDK签名白名单、自有安全校验)就会触发崩溃。

  • 前往Google Play控制台「应用完整性」页面,复制Play签名的SHA-1、SHA-256值,更新到所有需要配置签名的第三方SDK后台。
  • 移除不必要的本地签名校验逻辑,或适配Play签名的哈希值。

3. 动态功能模块配置错误

若你配置了动态功能模块,本地安装默认是全量安装,从Play下载可能仅下发基础模块,缺失核心功能代码导致崩溃。

  • 检查动态模块的分发规则,确认核心功能模块已设置为随基础包默认分发。

4. R8/ProGuard混淆规则遗漏

部分场景下Play分发时会对安装包做二次字节码优化,原本本地打包未触发的混淆问题会在下载后暴露。

  • 检查proguard-rules.pro文件,确保所有反射调用类、第三方SDK的混淆规则都正确配置。
  • 本地打包时使用和上传Play完全一致的构建配置,手动安装验证,不要直接通过Android Studio运行release包。

崩溃定位方法

直接前往Google Play控制台「质量 > 崩溃和ANR」页面,查看对应崩溃的堆栈信息,可快速定位具体触发崩溃的代码位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 07:09:07