CocoaPods trunk is moving to be read-only. Read more on the blog, there are 3 months to go.

FKConsole 1.0.1

FKConsole 1.0.1

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Dec 2016
SwiftSwift Version 3.0
SPMSupports SPM

Maintained by FlyKite.



FKConsole 1.0.1

FKConsole

A convenient console view

Features

  • [x] Easy to use
  • [x] Convenient to debug
  • [x] Don’t need to change key window
  • [x] Easy to distinguish between different Log Levels
  • [x] Log with class and function info, easy to find in project

Requirment

iOS 8.0 or later
Swift 3.0 or later

Install

Manually: Copy FKConsole.swift to your project
CocoaPods: pod 'FKConsole'

How to use

First, register FKConsole in AppDelegate.

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.

        // register FKConsole with default gesture (Double tap with three fingers to toggle)
        FKConsole.register(window: self.window)

        // Register FKConsole with custom gesture
        /*
        let showGesture = UITapGestureRecognizer.init()
        showGesture.numberOfTapsRequired = 2
        showGesture.numberOfTouchesRequired = 3
        let hideGesture = UILongPressGestureRecognizer.init()
        hideGesture.minimumPressDuration = 1.0
        hideGesture.numberOfTouchesRequired = 3
        FKConsole.register(window: window, showGesture: showGesture, hideGesture: hideGesture)
        */
        return true
    }

Then you can use these functions to print log.

/// Override to intercept print method
/// It's not recommended, please use Log.v(xxx) instead.
/// If you don't want to use this method, please remove it.
public func print(_ items: Any...)

public class Log: NSObject {
    /// Print verbose log (white)
    ///
    /// - parameter log: log content string
    public class func v(_ log: String?, fileName: String = #file, function: String = #function, lineNumber: Int = #line)

    /// Print debug log (blue)
    ///
    /// - parameter log: log content string
    public class func d(_ log: String?, fileName: String = #file, function: String = #function, lineNumber: Int = #line)

    /// Print info log (green)
    ///
    /// - parameter log: log content string
    public class func i(_ log: String?, fileName: String = #file, function: String = #function, lineNumber: Int = #line)

    /// Print warning log (yellow)
    ///
    /// - parameter log: log content string
    public class func w(_ log: String?, fileName: String = #file, function: String = #function, lineNumber: Int = #line)

    /// Print error log (red)
    ///
    /// - parameter log: log content string
    public class func e(_ log: String?, fileName: String = #file, function: String = #function, lineNumber: Int = #line)
}

Example

Warning: print function is not recommended! It won’t print class and function where you call print().

    print("Print a verbose log.")
    Log.v("This is a verbose log.")
    Log.d("This is a debug log.")
    Log.i("This is a info log.")
    Log.w("This is a warning log.")
    Log.e("This is a error log.")

example

License

All source code is licensed under MIT License