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

Firebase prod环境Flutter应用无分析数据显示问题求助

Firebase Prod环境分析数据不显示的排查方案(Flutter Android)

1. 核对Prod环境的google-services.json配置

  • 确保文件是从Firebase控制台Prod项目单独下载的,而非复用dev/qa环境的配置文件
  • 检查文件内project_info节点的project_id、project_number、firebase_url是否与Prod项目完全匹配
  • 确认client节点中的package_name和Prod构建的正式包名完全一致(注意Flutter多环境配置下,Prod包名可能不带.dev/.qa后缀)

2. 验证Prod Flavor构建配置

如果项目用Flavor区分环境,检查android/app/build.gradle中的Prod配置:

flavorDimensions "environment"
productFlavors {
    prod {
        dimension "environment"
        applicationId "com.yourcompany.yourapp" // 正式包名
        resValue "string", "firebase_performance_collection_enabled", "true"
    }
}
  • 打包时确认指定了Prod flavor,比如执行flutter build apk --flavor prod,或在IDE中选择Prod构建变体

3. 检查Firebase控制台Prod项目设置

  • 进入Prod项目的分析模块,确认服务已启用(部分新创建项目可能需手动开启)
  • 查看数据共享设置,确保未限制分析数据的收集权限

4. 排查代码中的Prod环境限制

  • 确认代码中未针对Prod/Release模式禁用分析收集:
// 错误示例:别在Release模式下关闭分析
// if (kReleaseMode) FirebaseAnalytics.instance.setAnalyticsCollectionEnabled(false);

// 正确配置
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  FirebaseAnalytics.instance.setAnalyticsCollectionEnabled(true);
  runApp(MyApp());
}
  • 检查是否遗漏Firebase初始化代码,确保Firebase.initializeApp()在runApp()前执行

5. 设备与网络环境验证

  • 使用物理设备测试Prod版本(模拟器可能存在数据上报延迟或权限限制)
  • 确保设备无代理/VPN拦截Firebase请求,且已授予应用网络权限
  • Android 13+设备需确认已申请APP_TRACKING_TRANSPARENCY权限,且用户允许应用跟踪

6. 查看调试日志

  • 连接Prod版本设备,执行命令过滤Firebase日志:
adb logcat -s FirebaseAnalytics FirebaseCore
  • 查找是否存在认证失败、配置错误、数据发送失败等报错信息
  • 开启Firebase调试模式验证上报:
adb shell setprop debug.firebase.analytics.app com.yourcompany.yourapp

然后在Firebase控制台事件调试页面查看是否有Prod设备的事件数据

7. 等待数据延迟

Firebase分析数据存在几小时到24小时的延迟,刚发布的Prod版本无需立即排查,等待一段时间后再确认数据是否显示

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 00:45:47