【问题标题】:Firebase Crashlytics Custom Log Only Log Single LineFirebase Crashlytics 自定义日志仅记录单行
【发布时间】:2018-02-14 00:53:11
【问题描述】:

最近我的应用程序在尝试反序列化从服务器发送的 JSON 时崩溃了,不幸的是服务器没有记录任何日志,所以我无法验证它们。所以我决定记录这个特定 Api 的 JSON 响应,我知道记录服务器响应是一种不好的做法,但这是我可以尝试识别问题的唯一方法,这个 api 的响应不是那么长,所以我认为它应该没问题。

当我试图显示日志并发现它在 firebase 控制台中只显示一行时,问题就出现了,如下所示:

raw response : {

我期待的结果如下所示,在使用 CLSNSLogv 进行开发时,vit 很好地显示在调试控制台中。我认为在 firebase 控制台中也是如此,但事实并非如此。

raw response : {
        success ={
            Status = OK;
            Object1 = "test"
            Object2 = "test2"
        };
    }

下面是记录的代码,“value”是一个字典,如下:

value: [String : AnyObject]?
CLSLogv("raw response : %@", getVaList([value!]))

感谢您的帮助

【问题讨论】:

    标签: ios swift firebase crashlytics firebase-crash-reporting


    【解决方案1】:

    这是一个 Crashlytics 问题,我的团队最近遇到了这个问题。我们在 ObjC 中使用 CLS_LOG 打印字典,我们注意到它只显示字典的第一行。

    我已经联系了 Crashlytics 支持团队,那里的一个人确认了一个错误并告诉我他联系了他们的工程团队以进行修复。

    您现在可以更改记录方式,以单行显示所有内容,或逐个记录,或者您可以等待修复。

    【讨论】:

    • 很高兴知道这一点,但由于我需要快速修复,我选择了 Alexizamerican 的答案。谢谢哥们!
    【解决方案2】:

    您可以使用 JSONSerialization 将响应转换为 JSON,然后删除所有回车符,使其全部为一行。如果您记录修改后的值,它应该会正确显示在 Crashlytics 日志中。

    【讨论】:

    • 抱歉回复晚了,正好在放假。会尽力回复您!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-23
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    • 2019-11-15
    • 2023-03-12
    相关资源
    最近更新 更多