您現在的位置是:電腦技術吧?>? 基礎知識 ??>??ios框架,iOS相關框架??>??正文詳情

ios框架,iOS相關框架

戴韻流2019-12-23 12:22:43 人圍觀
簡介ios網絡框架在Mac和iOS上,可可是一種快速、簡單、功能強大且靈活的日志記錄框架。Cocoa lumberjack與流行的日志框架(如log4j)類似,但它是為Objecios直播框架

CocoaLumberjack是Mac和iOS上一個集快捷、簡單、強大和靈活于一身的日志框架。

CocoaLumberjack類似于流行 的日志框架(如log4j),但它是專為Objective-C設計的,利用了多線程、GCD(如果可用)、無鎖原子操作Objective-C運行時的 動態特性。

  快速  在大多數用例中,Lumberjack比NSLog快了一個數量級。

  簡單  當應用程序啟動時,只需一行加單的代碼就可配置Lumberjack。

然后用DDLog語句簡單地取代NSLog語句。

并且DDLog宏與NSLog的有完全相同的格式和語法,所以超級簡單。

  強大  一個日志語句可以被發送到多個logger,意味著你可以同時記錄文件和控制臺。

此外,還可以創建自己的logger,將日志語句發送到網絡、數據庫或者分布式文件系統中。

沒有任何限制。

  靈活性  配置你自己想要的日志框架。

修改每個文件的日志級別(尤其是測試時)。

修改每個logger的日志級 別(詳細的控制臺,但是簡潔的日志文件)。

修改每個Xcode配置的日志級別。

為你的應用程序定制日志級別的數量。

添加自己的精細的日志。

在運行時動態修 改日志級別。

選擇如何以及何時回滾你的日志文件。

將日志文件上傳至中心服務器。

壓縮存檔日志文件來節省硬盤空間。

  當你遇到一下情況是,你可以選擇Lumberjack框架:  1.你想找到一種方式來跟蹤在程序中不斷出現的不可復制的bug;  2.你對iPhone上的簡短日志感到很失望;  3.出于支持系統和穩定性的需要,你想將應用程序升級到下一級別;  4.為你的應用程序(Mac或者iPhone)尋找企業級的日志解決方案。

  如何開始使用Lumberjack框架  開始  三步開始使用CocoaLumberjack框架:  1.將Lumberjack文件添加到你的項目中;  2.配置框架;  3.將NSLog指令轉換為使用Lumberjack宏指令;  把Lumberjack框架添加到你的項目  需要添加的主要文件有四個:  [email protected](整個框架的基礎)  [email protected](發送日志語句到蘋果的日志系統,以便它們顯示在Console.app上)  [email protected](發送日志語句到Xcode控制臺,如果可用)  [email protected](把日志語句發送至文件)  DDLog是強制性的,其余的都是可選的,這取決于你打算如何使用這個框架。

例如,如果你不打算紀錄到一個文件,你可以跳過DDFileLogger,或者你想跳過ASL以便更快的文件記錄,你可以跳過DDASLLoger。

  配置框架  首先,你想要在你的應用程序中配置這個日志框架,通常在applicationDidFinishLaunching方法中配置。

  開始時,你需要下面兩行代碼:  [DDLog addLogger:[DDASLLogger sharedInstance]];  [DDLog addLogger:[DDTTYLogger sharedInstance]];  這將在你的日志框架中添加兩個logger。

也就是說你的日志語句將被發送到Console.app和Xcode控制 臺(就像標準的NSLog)  這個框架的好處之一就是它的靈活性,如果你還想要你的日志語句寫入到一個文件中,你可以添加和配置一個file logger:  fileLogger = [[DDFileLogger alloc] init];  fileLogger.rollingFrequency = 60 * 60 * 24; // 24 hour rolling  fileLogger.logFileManager.maximumNumberOfLogFiles = 7;  [DDLog addLogger:fileLogger];  上面的代碼告訴應用程序要在系統上保持一周的日志文件。

  用DDLog替換NSLog語句  DDLog的頭文件定義了你用來替換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的語法完全相同。

  所以你所要做的就是決定每個NSlog語句屬于哪種日志級別。

DDLog默認有四種級別的日志,分別是:  [email protected]  [email protected]  [email protected]  [email protected]  (注意:你也可以自定義級別以及級別名或者添加更精細的控制來代替系統四個簡單的等級。

)  當然選擇哪個NSLog語句取決于你的消息的嚴重程度。

  下面的這些不同的日志等級也許正有你所需要的:  1.如果你將日志級別設置為 LOG_LEVEL_ERROR,那么你只會看到DDlogError語句。

  2.如果你將日志級別設置為LOG_LEVEL_WARN,那么你只會看到DDLogError和DDLogWarn語句。

  3.如果您將日志級別設置為 LOG_LEVEL_INFO,那么你會看到error、Warn和Info語句。

  4.如果您將日志級別設置為LOG_LEVEL_VERBOSE,那么你會看到所有DDLog語句。

  5.如果您將日志級別設置為 LOG_LEVEL_OFF,你將不會看到任何DDLog語句。

  那么我在哪里設置日志級別呢,在整個項目中我只能使用一個日志級別嗎?  當然不是,我們都知道正如調試或者添加新特性,如果你想詳細紀錄目前正在做的那部分,Lumberjack框 架提供了對每個文件的調試控制,你僅可以修改編輯中的文件的日志級別。

  (注釋:當然還有許多其他高級選項,比如全球日志級別,Xcode的每個配置級別,每個logger級別等,我們將在另一篇文章中講到)。

  以下是如何轉換你的日志語句:  // 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語句都將編譯到你的項目中。

  自動引用計數(ARC)  最新版本的Lumberjack使用ARC。

如果你的項目沒有使用ARC,你可以在ARC頁面學習如何在Xcode中像ARC一樣正確地標記Lumberjack文件。

  更多關于Lumberjack:  Automatically use different log levels for your debug vs release builds  Tailor the log levels to suite your needs  Filter logs based on logger settings  Write your own custom formatters  Write your own custom loggers  And more...  原文:CocoaLumberjack

版權聲明:本文由 戴韻流 整理編輯。

原標題:ios框架是什么,ios常用框架

轉載注明出處:http://www.dn9ww09s.icu/basics/15640.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • 應用程序是什么,安裝應用程序

    應用程序是什么,安裝應用程序 相關圖片手機應用程序在哪里Watchkit應用程序體系結構Watchkit應用程序是運行在Apple watch中的可執行文件。它包括腳本和渲染屏幕所需的資源文件。watchkit擴展是桌面應用程序...

  • linux shell exec,linux的shell命令

    linux shell exec,linux的shell命令 相關圖片python調用shell經常會遇到操作部門需要清除緩存的情況,但緩存始終存在問題。這不是在電腦前處理的方法。我想到了一種通過訪問JSP page%@page language=Javalinux常用命令...

  • 數據庫應用,數據庫使用

    數據庫應用,數據庫使用 相關圖片數據庫什么用1、 在ASP中,用于訪問數據庫的對象稱為ADO(active data objects)。對象有三種:連接、記錄集和命令連接。他們負責打開或連接數據拿數據庫...

  • redis緩存php,redis緩存機制php

    redis緩存php,redis緩存機制php 相關圖片redis緩存常用數據除了Memcache(一個常見的PHP操作類庫)之外,我們還可能非常熟悉內存緩存,即redis。我們與您分享的PHP技術文章是關于如何使用PHP操作redis,怎么使用redis緩存...

  • 兩種方案對比分析方法,對比分析的文章

    兩種方案對比分析方法,對比分析的文章 相關圖片空調方案對比分析這是對Ajax中兩種JSON解析方法的比較分析,非常實用。本文是一篇學習筆記,一篇新手文章,歡迎指教!Eval();//此方法不建議使用JSON。Parse()施工方案對比分析...

  • 字符串怎么轉json,字符串轉json數組

    字符串怎么轉json,字符串轉json數組 相關圖片將json轉換為字符串本文主要介紹了JavaScript中字符串到JSON的兩種方法,一種是使用JS函數eval(),另一種是使用jQuery。Parsejson()。對于朋友,請參字符串和json的轉換...

  • 深入理解并行編程,深入理解python異步編程

    深入理解并行編程,深入理解python異步編程 相關圖片并行編程語言本文主要介紹了對JavaScript編程中原型概念的深入理解,包括原型屬性的使用等相關知識。您可以引用JavaScript的原型對象,這總是令人困惑。甚至有經驗python 異步回調...

  • 第一行代碼引用,excel代碼引用

    第一行代碼引用,excel代碼引用 相關圖片J引用文件本文主要介紹了利用requirejs優化JavaScript引用代碼的方法。Requirejs是一個流行的JS庫。您可以將requirejs作為一種有效的方法來MVC代碼更新所有引用報錯...

  • mac卸載軟件,mac safari打不開

    mac卸載軟件,mac safari打不開 相關圖片mac突然黑屏本文的示例描述了jQuery根據用戶的計算機是MAC還是PC加載相應樣式的方法,與您分享,以供參考。具體實現方法如下:?12345if(導航器。用戶代理。Indmac電腦黑屏怎么辦...

  • 對象比較大小,相對大小的對象

    對象比較大小,相對大小的對象 相關圖片cdr對象大小本文演示了JavaScript如何獲得指定對象的大小。與您分享以供參考。具體如下:?1234567891011用于驗證設置對象格式里面的大小...

熱評文章

  • 子網掩碼和網關,子網掩碼 網關

    子網掩碼和網關,子網掩碼 網關 相關圖片ip地址子網掩碼網關怎么填本文采用JS對IP、子網掩碼、網關和MAC進行驗證。與您分享以供參考。具體如下:?123456789101314151617181920212223252627ip地址,子網掩碼,默認網關...

  • 什么是線程,java線程同步機制

    什么是線程,java線程同步機制 相關圖片進程和線程的區別本文主要介紹JavaScript線程和計時機制的相關信息。對于您的朋友,請參考setTimeout和setinterval的JavaScript API文檔,定java線程狀態...

  • 快速關鍵代碼,關鍵代碼段

    快速關鍵代碼,關鍵代碼段 相關圖片直接關機的代碼一。用于確定郵箱格式是否正確的代碼://verify-(bool)isvalidateemail:(nsstring*)email{nsstring*emailcnas關鍵代碼...

  • c 多線程編程,多線程編程java

    c  多線程編程,多線程編程java 相關圖片java多線程編程實戰一。簡介:1.1ios有三種多線程編程技術:1。螺紋2。可可nsoperation 3。GCD全名:grjava多線程編程題...

  • 窗口程序用什么語言,應用程序怎么打開

    窗口程序用什么語言,應用程序怎么打開 相關圖片安卓應用開發語言在應用程序中使用多語言通常有兩種方式:一是為用戶提供選擇自己語言的機會;二是根據當前用戶當前的移動設備語言自動將我們的應用程序切換到相應的語言。第...

  • memcache緩存,memcache本地緩存

    memcache緩存,memcache本地緩存 相關圖片memcache分布式緩存一般來說,如果并發量很小,則對不使用緩存技術沒有影響。但是,如果并發量很大,使用緩存技術就顯得非常重要,這可以降低數據庫和服務器的壓力。當然,有很多...

  • mathjax基本語法,c 基本語法

    mathjax基本語法,c  基本語法 相關圖片C語言的基本語法1、 JSP元素1,腳本元素,包括表達式,代碼片段(包括內置類),聲明(成員變量和方法),注釋(輸出和隱藏)2,指令元素,包括頁(語言,擴展,導入,會話,緩沖...

  • asp_html,asp就是html嗎

    asp_html,asp就是html嗎 相關圖片html打開asp頁面巧用ASP語言過濾HTML元素:“過濾HTML”函數名:glhtml“函數:過濾HTML元素”參數:STR----過濾字符“返回值:無HTML字符”******asp和php...

  • 探索發現筆記,探索筆記怎么開啟

    探索發現筆記,探索筆記怎么開啟 相關圖片紫水宮探索筆記什么是UI測試?UI測試是一個自動測試UI和交互的測試組件。UI測試有什么用?它可以通過編寫代碼或記錄開發人員的操作過程和編碼,自動點擊按鈕、查看或輸入文本。用...

  • url帶參數,url傳參數

    url帶參數,url傳參數 相關圖片url參數錯誤本文的例子描述了用JavaScript獲取URL查詢參數的方法。與您分享以供參考。具體實現方法如下:?12345678910函數getqueryvariableurl是啥...

關注微信

变脸官网查询