2016-06-13 141 views
3

我在iOS中集成了没有可可豆荚的Firebase崩溃报告。我收到错误。任何人都可以帮我解决这个问题吗?Firebase崩溃报告上传错误

火力地堡崩溃报告:无法发送崩溃:错误域= com.google.FirebaseCrash代码= 1 “上传失败” 的UserInfo = {NSLocalizedDescription =上传失败,NSLocalizedFailureReason = HTTP错误代码400:{URL:https://mobilecrashreporting.googleapis.com/v1/crashes:batchCreate?key=AIzaSyAmAo91FUyOLsvhIbsSo9U4bwoY9pHBDSM&alt=json} {状态代码:400,标题{“Cache-Control”= private; “内容编码”= gzip; “Content-Length”= 123; “Content-Type”=“application/json; charset = UTF-8”;日期=“星期一,2016年6月13日17时01分1秒GMT”;服务器= ESF; Vary =“Origin,X-Origin,Referer”; “alt-svc”=“quic = \”:443 \“; ma = 2592000; v = \”34,33,32,31,30,29,28,27,26,25 \“”; “alternate-protocol”=“443:quic”; “x-content-type-options”= nosniff; “x-frame-options”= SAMEORIGIN; “x-xss-protection”=“1; mode = block”; }}}

回答

0

我遇到了同样的问题,无法弄清楚400错误的原因是什么。这是一个不太痛苦的方式来得到错误的原因:

安装Charles Proxy(或任何您最喜欢的检查请求的方式是),请转至帮助> SSL代理>在iOS模拟器中安装Charles Root证书。然后让它无法在模拟器中再次发送崩溃报告,并在Charles中查找对mobilecrashreporting.googleapis.com的请求。点击Response查看实际响应JSON,这应该有请求失败的原因。

我的是一个无效的BundleVersion值,你可能会是别的东西: { "error": { "code": 400, "message": "Invalid iOS internal version: '1A001'.", "status": "INVALID_ARGUMENT" } }

一旦我固定的版本号崩溃报告开始工作。这个信息应该真的在原始的失败日志中,所以我要为此做一个功能请求。希望这可以帮助

0

单击设置图标(在概览菜单旁边)>单击项目设置 选择服务帐户,然后单击崩溃报告 等待加载...。

之后,再次单击(旁边总菜单)>单击权限 选择服务从左边的菜单 找到“火力-crashreporting”服务帐户名>点击右侧的创建关键的3个点账户设置图标并选择Json格式。 之后,您将获得下载的“未知”文件,然后将其名称更改为“ServiceAccount.json” 将其拖到Xcode项目。

在Build阶段添加“运行脚本”。 将下面的2行: GOOGLE_APP_ID = 1:xxxx5xxxxxxx:IOS:XXXXXXXXXXXXXXXX(取从GoogleService-Info.plist中) $ {SRCROOT} /火力地堡/崩溃/上传 - 均$ {SRCROOT} /ServiceAccount.json

FYI 不需要在$ {SRCROOT}上放置“” $ {SRCROOT}/Firebase/Crash/upload-sym >>>>>我把firefoxbase/Crash上的upload-sym/