你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS開發之CocoaLumberjack

iOS開發之CocoaLumberjack

編輯:IOS開發綜合
Cocoa LumberJack是一個功能強大的NSlog,是通用的Cocoa日志框架之一。它可以提供更高級的log功能,比如記錄log至文件或網絡,並可根據log的級別(info、debug、warn、error)進行篩選。眾所周知,NSlog雖然功能強大,但卻普遍存在不支持分級別log、僅支持本地打印的問題,而且在大量處理log時,會降低程序運行效率。而Cocoa LumberJack則不存在這樣的制約。源碼地址在: https://github.com/robbiehanson/CocoaLumberjack/wiki/GettingStarted,下面介紹如何使用:   把框架添加到你的應用程序 主要添加的文件有以下四個    @ DDLog(基礎框架)    @ DDASLLogger(發送到蘋果的日志系統,他們顯示到控制台上),個人建議沒有必要    @DDTTYLoyger (發送日志語句到控制台)    @DDFIleLoger (把輸出信息寫進文件中)   DDLog是強制性的,其余的都是可選的,這取決於你如何打算使用這個框架,如果你不打算紀錄到一個文件,你可以跳過DDFileLogger,或者你想跳過ASl 在你的愛好快速紀錄日志,你可以跳過DDASLLoger   配置框架   第一件事情你要做的是在你applicationDidFinishLaunching方法中配置(通常是這麼做)添加你所需要的文件     下面幾行代碼是在開始的時候所需要的   1 2 [DDLog addLogger:[DDASLLogger sharedInstance]]; [DDLog addLogger:[DDTTYLogger sharedInstance]];<br>fileLogger = [[DDFileLogger alloc]  init];<br>fileLogger.rollingFrequency = 60 * 60 * 24; <br>// 24 hour rolling<br>fileLogger.logFileManager.maximumNumberOfLogFiles = 7;<br>[DDLog addLogger:fileLogger];   上面兩行代碼添加了一對logging框架,換句話說,你的日志語句已經能夠發送到控制台,(就像一個正常的NSLog)     這個框架的好處之一就是它的靈活性,如果你還想要你的日志語句寫入到一個文件中,你可以添加和配置fileLogger   用Lumberjack輸入代替你的NSLog輸出 DDLog的頭文件定義了宏,您將使用來取代你的NSLog語句。你可以參考下面的語句來代替你的NSlog     // Convert from this: NSLog(@"Broken sprocket detected!"); NSLog(@"User selected file:%@ withSize:%u", filePath, fileSize);   // To this: DDLogError(@"Broken sprocket detected!"); DDLogVerbose(@"User selected file:%@ withSize:%u", filePath, fileSize); 我們看到DDLog和NSLog有這完全相同的語法,在使用的時候不會有人和的障礙。   DDLog默認有四種級別的日志,你所要做的就是決定使用那種日志級別來打印你的日志語句,它們分別是:   @DDlogError @DDlogWarn @DDlogInfo @DDlogVerbose   注釋:你也可以自定義級別,你可以添加上更細微的控制代替系統四個簡單的等級。 當然你選擇那個NSLog語句,這取決於你的消息的嚴重程度。   下面的這些不同的日志等級也許正有你所需要的   如果你設置的日志級別為 LOG_LEVEL_ERROR那麼你只會看到DDlogError語句的輸出。 如果你將日志的級別設置為LOG_LEVEL_WARN那麼你只會看到DDLogError和DDLogWarn語句。 如果您將日志級別設置為 LOG_LEVEL_INFO,您將看到error、Warn和信息報表。 如果您將日志級別設置為LOG_LEVEL_VERBOSE,您將看到所有DDLog語句。 如果您將日志級別設置為 LOG_LEVEL_OFF,你不會看到任何DDLog語句。   那麼我在哪裡設置日志級別?我必須使用一個日志級別為我的整個項目嗎?     當然不是,我們都知道它就像調試或者添加新的特性,你想詳細紀錄你目前正在調試的部分,這個框架提供了對每個文件的調試,所以你可以修改日志級別在你正在編輯的文件中。   注釋:(當然還有許多其他高級選項,比如全球日志級別,每xcode配置水平,每記錄器級別等。但是我們會去,在另一篇文章)。 下面是詳細的如何在你的代碼中運用這個框架     // CONVERT FROM THIS   #import "Sprocket.h"   @implementation Sprocket   - (void)someMethod {     NSLog(@"Meet George Jetson"); }   @end   // TO THIS   #import "Sprocket.h" #import "DDLog.h"   static const int ddLogLevel = LOG_LEVEL_VERBOSE;   @implementation Sprocket   - (void)someMethod {     DDLogVerbose(@"Meet George Jetson"); }   @end     注意日志級別聲明為常數,這意味著DDLog以上聲明的日志級別將被認為默認值,編譯到你的項目中。(當你的編譯器優化打開的時候,那就是你的發布版本)             內測寶       個人覺得比TestFlight更簡單好用,開發者只需要簡單把打好的ipa包上傳上去,生成二維碼,測試人員在手機上掃碼二維碼,就可以直接安裝最新的測試版本了,好用的讓人想哭。   目前需要邀請碼注冊,我這裡有幾枚邀請碼,需要的私信我郵箱,或者自己去申請邀請碼。
  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved