iPhone RestKit如何启用RKLogDebug?

32

我正在尝试调试RestKit对象映射,并注意到代码中有调用RKLogDebug,但似乎该宏在某处未被定义。我应该如何启用它?

我试图调试 RestKit 对象映射,发现代码中有许多调用 `RKLogDebug` 的地方,但是貌似这个宏在某处没有被定义。请问我如何启用它?
2个回答

72
你想要添加类似于以下内容的东西:

    RKLogConfigureByName("RestKit", RKLogLevelWarning); 
    RKLogConfigureByName("RestKit/ObjectMapping", RKLogLevelTrace);
    RKLogConfigureByName("RestKit/Network", RKLogLevelTrace);

请查看RKLog.h以了解不同级别的记录方式并将其添加到您的代码中。这可能有些棘手。

注意,这支持在结尾处使用通配符,例如:

    RKLogConfigureByName("*", RKLogLevelTrace); // set all logs to trace,
    RKLogConfigureByName("RestKit*", RKLogLevelWarning); // set all RestKit logs to warning (leaving the app-specific log untouched). 

– 感谢Kevin!

针对Swift用户,请使用以下语法:

    RKlcl_configure_by_name("RestKit/Network", RKlcl_vTrace.rawValue)  
    RKlcl_configure_by_na`enter code here`me("RestKit/ObjectMapping", RKlcl_vOff.rawValue) 

- 感谢Darshit!


5
你可能是整个宇宙中最棒的人,你知道吗? - jturolla
3
注意:此处支持通配符,例如 RKLogConfigureByName("*", RKLogLevelTrace); 将所有日志级别设置为追踪(trace),RKLogConfigureByName("RestKit*", RKLogLevelWarning); 将所有以 RestKit 开头的日志级别设置为警告(warning),而不影响应用特定的日志。 - Kevin
我建议您将这作为一个新问题提出,这样您可能会得到更好的结果。(而且,就我个人而言,我目前也想不到任何解决方案...) - Paul Cezanne
1
RestKit日志记录在此处解释 http://restkit-tutorials.com/logging-in-restkit-debug-tips/ - Alex Kurkin
对于Swift用户,请使用以下语法:RKlcl_configure_by_name("RestKit/Network", RKlcl_vTrace.rawValue) RKlcl_configure_by_name("RestKit/ObjectMapping", RKlcl_vOff.rawValue)https://dev59.com/go3da4cB1Zd3GeqP4cRQ - Darshit Mendapara

2
如第一个答案所述,您可以通过调用RKLogConfigureByName来将您的应用程序配置到特定组件。
您还可以使用Xcode方案中的环境变量为特定组件配置RestKit。这在您的应用程序不断地构建不同环境时非常有用。
以下是有关RestKit日志记录的详细说明http://restkit-tutorials.com/logging-in-restkit-debug-tips/

1
嘿@Borzh,这里有存档可供使用:https://web.archive.org/web/20150706073124/http://restkit-tutorials.com:80/logging-in-restkit-debug-tips - Alex Kurkin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接