iOS Firebase崩溃报告 – 运行构建脚本时出错

运行脚本上传符号文件时出现以下错误(每次我尝试构建项目时):

upload-sym-util.bash:351: error: symbolFileUploadLocation: The API Key and the authentication
credential are from different projects.

这是我的构建脚本:

if [ "$CONfigURATION" == "Debug" ]; then
    GOOGLE_APP_ID=<app-id>
    "${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}"/<app>/Firebase/CrashReportingKey-Dev.json
else
    GOOGLE_APP_ID=<app-id>
    "${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}"/<app>/Firebase/CrashReportingKey.json
fi

我做过/检查的事情:

> GOOGLE_APP_ID和CrashReportingKey * .json与同一项目相关联.
>我的GoogleService-Info * .plist文件具有API_KEY字段.
>选中“仅在安装时运行脚本”框,允许我运行应用程序,但实际上并不在开发环境中运行脚本.因此崩溃会发送到Firebase,但它们不是象征性的.

我对任何想法持开放态度.谢谢!

解决方法

你是正确的,没有办法覆盖GoogleService-Info.plist.但是,仍然有一种方法可以覆盖上载脚本从该文件中使用的信息.

>打开与.json对应的GoogleService-Info.plist.
>搜索GOOGLE_APP_ID和API_KEY.
>像这样调整构建脚本:

export FIREBASE_APP_ID=<GOOGLE_APP_ID>
export FIREBASE_API_KEY=<API_KEY>

"${PODS_ROOT}"/FirebaseCrash/upload-sym "ServiceAccount.json"

在您的情况下,您的最终脚本应如下所示:

if [ "$CONfigURATION" == "Debug" ]; then
        export FIREBASE_APP_ID=<app-id>
        export FIREBASE_API_KEY=<API_KEY for dev>
        "${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}"/<app>/Firebase/CrashReportingKey-Dev.json
    else
        export FIREBASE_APP_ID=<app-id>
        export FIREBASE_API_KEY=<API_KEY for release>
        "${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}"/<app>/Firebase/CrashReportingKey.json
    fi

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...