Crashlytics CLS_Log与NSLog的生产应用程序

时间:2013-09-09 16:33:54

标签: ios objective-c xcode debugging crashlytics

不是一个特定的问题,但我很好奇是否有人使用过CLSLog() or CLSNSLog() provided by the Crashlytics SDK

到目前为止,我的应用程序相当小,而且我一直都在离开NSLog,甚至还提交了最终的应用程序。事后看来,我可能应该关闭它们,使用其他一些日志记录系统,或者#define一个DEBUG var,它会在发布后禁用它们,因为我看到人们在其他帖子中讨论过。

无论如何,只是好奇以前是否有人使用过它?

2 个答案:

答案 0 :(得分:13)

最好的方法是声明一个名为DEBUG

的预处理器变量 标题中的

包括:

#define DEBUG 1

之后,出于调试目的,将DEBUG设置为1,并将NSLog设置为所有内容。

#if DEBUG==1
   NSLog(@"debug mode activated, value for certain variables is: %d", i);
#endif

在您发货之前,只需更改

即可
#define DEBUG 0

这样,您可以在应用程序中保留整个代码以进行调试,并将其保留以供进一步开发

来自Crashlytics的CLS_LOG让您可以从Crashlytics网站访问该应用程序的日志。它还收集有关崩溃,内存警告,在特定点崩溃的用户数等信息。

快乐的编码!

编辑:

我忘记添加一件事:对于我正在处理的应用程序,在前缀中,我们定义了:

#define NSLog(...) CLS_LOG(__VA_ARGS__)

因此,我们不会明确使用CLS_LOG。我们只使用NSLog,但所有NSLog都可以进入Crashlytics仪表板。

答案 1 :(得分:1)

我创建了一些.h文件,其中包含我需要使用的所有常见常量,并添加了.pch文件(为了不弄乱它)。我还导入了CrashLytics通过pods(如果我以通常的方式包含在项目中,.pch没有认识到它的一些原因)

#ifdef DEBUG
#define NSLog(...) CLS_LOG(__VA_ARGS__)
#define ServerURL    @"http://TestServer"
#else
#define ServerURL    @"http://RealServer" 
#define NSLog(...)