【问题标题】:iOS Firebase Crash Reporting Uploading Symbol filesiOS Firebase 崩溃报告上传符号文件
【发布时间】:2017-01-27 15:14:23
【问题描述】:

我通过 cocoa pods 将 firebase 崩溃报告集成到我的应用程序中。我创建了运行脚本分机。

所以它现在正在工作。但我的问题是,每次我尝试构建和运行应用程序时,即使在模拟器中它也会尝试上传符号文件,并且构建和运行应用程序需要太多时间。

我以前用过曲棍球应用程序。在曲棍球应用程序中,我正在使用曲棍球应用程序的 mac 应用程序来上传符号文件。例如,当我的开发和开发人员测试完成时,我将发布 add hoc 构建,然后我将符号文件发送到曲棍球应用程序。

所以我的问题是:Firebase 崩溃报告的最佳用例流程是什么?我可以在发布 add hoc 或 App Store 发布之前上传符号文件吗? (不是每次)

或者是否可以在模拟器构建中禁用符号文件上传的“运行脚本”。

【问题讨论】:

    标签: ios objective-c xcode firebase firebase-crash-reporting


    【解决方案1】:

    所以我只在我的符号上传运行脚本上选中“仅在安装时运行脚本”。

    这确保它只会在归档应用程序时运行,而不是在开发过程中(例如,在将我们的应用程序发布到野外时)。

    【讨论】:

    • 我以为我会打败这个人,认为“仅在安装时运行脚本”也会在设备上安装构建时触发,但不,这仅在存档期间有效。我不确定该复选框背后的逻辑是什么,但这是一个有效的答案!
    【解决方案2】:

    这将只为release 构建配置上传符号:

    echo configuration is $CONFIGURATION
    
    if [ $CONFIGURATION == Release ]; then
    
        echo uploading symbols
    
        # Replace this with the GOOGLE_APP_ID from your GoogleService-Info.plist file
        GOOGLE_APP_ID=1:************
    
        # Replace the /Path/To/ServiceAccount.json with the path to the key you just downloaded
        "${PODS_ROOT}"/FirebaseCrash/upload-sym "${SRCROOT}/GoogleServiceAccount.json"
    
    else
    
        echo skipping symbols upload
    
    fi
    

    【讨论】:

    • 对我的环境没有帮助。当我运行发布模式时,xcode 会自行运行自定义 shell 脚本。在开发模式下一切正常
    • @Kingalione 你可能想检查你的构建日志。 Bash 的 if-then 不太可能挂起任何东西。
    【解决方案3】:

    您似乎正在寻找这样的东西:

    if [ ${PLATFORM_NAME} != "iphonesimulator" ]; then
        echo "Uploading Firebase Crash Symbols..."
    
        # Replace this with the GOOGLE_APP_ID from your GoogleService-Info.plist file
        GOOGLE_APP_ID=1:my:app:id
    
        # Replace the /Path/To/ServiceAccount.json with the path to the key you just downloaded
        "${PODS_ROOT}"/FirebaseCrash/upload-sym "/Path/To/ServiceAccount.json"
    fi
    

    因此,至少,它只会在您为非模拟器构建任何东西时运行和上传符号。

    【讨论】:

    • 谢谢,这是一个很好的答案。但它不能解决我的问题。因为我有 2 个配置,1 是调试,1 是发布。调试连接到测试,发布连接到生产环境。所以我也发送测试 - 临时构建,它需要是可跟踪的。所以我的问题是我只想在使用模拟器时阻止发送符号文件。有可能吗?
    • 啊,我明白了。这是有道理的,是的。我已经相应地更新了我的答案。
    【解决方案4】:

    如果您不想,不必每次都运行脚本。最低限度,您应该为要进入商店的每个构建运行一次。您可以在应用发布到商店之前上传。

    【讨论】:

    • 所以你在建议;删除运行脚本并在执行添加 hoc 和应用商店发布时添加它。我理解正确吗?但我需要自动化这个流程。有可能吗?
    • 您不必删除任何内容。只需在需要时手动或从其他脚本运行它。
    猜你喜欢
    • 2017-04-12
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    • 2018-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-31
    相关资源
    最近更新 更多