我正在更新我的应用程序以使用RestKit 0.2pre3,但在此过程中我丢失了RestKit提供的日志记录系统,它根本不再显示任何内容。我使用cocoapods来安装RestKit。
这是我的Podfile
platform :ios , '5.1'
pod 'SSPullToRefresh'
pod 'MBProgressHUD'
pod 'Facebook-iOS-SDK'
pod 'TestFlightSDK'
pod 'SDWebImage'
pod 'KISSmetrics'
pod 'CustomBadge'
pod 'GoogleAnalytics-iOS-SDK'
pod 'JSONKit'
pod 'LibComponentLogging-Core'
pod 'LibComponentLogging-LogFile'
pod 'LibComponentLogging-qlog'
pod 'LibComponentLogging-pods'
pod 'RestKit/Testing'
pod 'RestKit'
pod 'OHAttributedLabel'
当然,在我的代码中我正在调用
RKLogConfigureByName("RestKit", RKLogLevelTrace);
RKLogConfigureByName("RestKit/Network", RKLogLevelTrace);
RKLogConfigureByName("RestKit/CoreData", RKLogLevelDebug);
我甚至可以成功获取请求并获取对象映射,但我无法看到我的服务器返回的内容,映射过程的执行方式或任何内容,这一点至关重要。
我认为问题是LCL中的某些内容配置错误,但我找不到任何线索。
问题出在哪里?
答案 0 :(得分:0)
经过长时间的调试后,我发现LCL现在带有一组默认配置,并且在LCLLogFileConfig.h上我有:
// Tell LCLLogFile whether it should mirror the log messages to stderr.
#define _LCLLogFile_MirrorMessagesToStdErr /* (BOOL) */ \
NO
我将其设置为是,现在一切正常。
答案 1 :(得分:0)
此行为是由Podfile中的以下2个pod引起的:
pod 'LibComponentLogging-pods'
pod 'LibComponentLogging-LogFile'
LibComponentLogging-pods
pod导致RestKit的日志记录与通过Podfile安装的LibComponentLogging文件集成,例如: RestKit的日志组件现在可以通过标准的lcl_configure
...配置函数进行配置,RestKit将使用通过Podfile配置的日志编写器(而不是其内置的日志编写器)。
LibComponentLogging-LogFile
窗格为LibComponentLogging选择基于文件的日志编写器。默认情况下,此日志编写器不会将其消息镜像到stderr。 _LCLLogFile_MirrorMessagesToStdErr
中的LCLLogFileConfig.h
可用于更改此行为。