iOS备忘录iOS开发

LLDebugTool - 便捷的IOS调试工具(支持组件化)

2018-05-21  本文已影响377人  HDB_Li
image

LLDebugTool是一款针对开发者和测试者的调试工具,它可以帮助你在非Xcode的情况下,进行数据分析和操作。

为您的下一个项目选择LLDebugTool,或者迁移到您现有的项目中——您会为此感到惊喜!

screenGif.gif

最近更新 (1.2.0)

支持组件化。

LLDebugTool 现在已经支持组件化了。现在你可以集成某一个或者多个模块到你自己的Debug 工具里。你可以直接使用每个模块内包含的视图控制器,或者只调用Function文件夹下的功能,然后自己搭建UI。

如何使用组件化,具体请看Wiki使用组件化或者添加 LLDebugTool 到你的项目中

更多的修改内容可以查看Version 1.2.0 Project

新增

更新

添加 LLDebugTool 到你的项目中

CocoaPods

CocoaPods 是集成LLDebugTool的首选方式。

Objective - C
  1. 添加 pod 'LLDebugTool' , '~> 1.0.0' 到你的Podfile里。如果只想在Debug模式下使用,则添加pod 'LLDebugTool' , '~> 1.0.0' ,:configurations => ['Debug'] 到你的Podfile里,详细的配置方式可以查看Wiki/如何仅在Debug环境中使用。如果你想要指定某个版本,可以类似这样使用 pod 'LLDebugTool' , '1.1.7' ,:configurations => ['Debug']
  2. 终端输入pod install来进行集成。搜索不到LLDebugTool或者搜不到最新版本时,可先运行pod repo update,再执行pod install
  3. 在你需要使用LLDebugTool的文件里添加#import "LLDebug.h",或者直接在pch文件中添加#import "LLDebug.h"
Swift
  1. 添加 pod 'LLDebugToolSwift' , '~> 1.0.0' 到你的Podfile里。如果只想在Debug模式下使用,则添加pod 'LLDebugToolSwift' , '~> 1.0.0' ,:configurations => ['Debug'] 到你的Podfile里,详细的配置方式可以查看Wiki/如何仅在Debug环境中使用。如果你想要指定某个版本,可以类似这样使用 pod 'LLDebugToolSwift' , '1.1.7' ,:configurations => ['Debug']
  2. 必须在Podfile中添加 use_frameworks!
  3. 终端输入pod install来进行集成。搜索不到LLDebugToolSwift或者搜不到最新版本时,可先运行pod repo update,再执行pod install
  4. 在你需要使用LLDebugTool的文件里添加import LLDebugToolSwift

Carthage

Carthage 是一个分散的依赖管理器,它构建您的依赖并为您提供framework框架。

Objective - C
  1. 要使用Carthage将LLDebugTool集成到Xcode项目中,请在Cartfile中指定它:

    github "LLDebugTool"

  2. 运行 carthage 来构建框架,并将构建的LLDebugTool.framework拖到Xcode项目中。

Swift
  1. 要使用Carthage将LLDebugToolSwift集成到Xcode项目中,请在Cartfile中指定它:

    github "LLDebugToolSwift"

  2. 运行 carthage 来构建框架,并将构建的LLDebugToolSwift.framework拖到Xcode项目中。

源文件

您可以直接将名为LLDebugTool文件夹的源文件添加到项目中。

Objective - C
  1. 下载最新的代码版本或将存储库作为git子模块添加到您的git跟踪项目中。
  2. 在Xcode中打开项目,然后拖拽名为“LLDebugTool”的源文件夹到你的项目中。当提示Choose options for adding these files时,务必勾选Copy items if needed这项。
  3. 集成FMDB到项目中,FMDB是一个围绕SQLite的Objective-C包装器开源库。
  4. 在你需要使用LLDebugTool的文件里添加#import "LLDebug.h",或者直接在pch文件中添加#import "LLDebug.h"
Swift
  1. 下载最新的Objective-C代码版本或将存储库作为git子模块添加到您的git跟踪项目中。
  2. 下载最新的Swift扩展代码版本或将存储库作为git子模块添加到您的git跟踪项目中。
  3. 在Xcode中打开项目,然后拖拽名为“LLDebugTool”和“LLDebugToolSwift”的源文件夹到你的项目中。当提示Choose options for adding these files时,务必勾选Copy items if needed这项。
  4. 集成FMDB到项目中,FMDB是一个围绕SQLite的Objective-C包装器开源库。
  5. 在你需要使用LLDebugTool的文件里添加import LLDebugToolSwift

如何使用

启动

你需要在"application:(UIApplication * )application didFinishLaunchingWithOptions:(NSDictionary * )launchOptions"中启动LLDebugTool,否则你可能会丢掉某些信息。

如果你想自定义一些参数,你需要在调用"startWorking"前配置这些参数。更详细的配置信息请看LLConfig.h

In Objective-C

#import "AppDelegate.h"
#import "LLDebug.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // The default color configuration is green background and white text color. 

    // Start working.
    [[LLDebugTool sharedTool] startWorking];
    
    // Write your project code here.
    return YES;
}

In Swift

import LLDebugToolSwift

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // ####################### Start LLDebugTool #######################//
        // Use this line to start working.
        LLDebugTool.shared().startWorking()
        
        // Write your project code here.
        
        return true
    }

In Objective-C

#import "AppDelegate.h"
#import "LLDebug.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    //####################### Color Style #######################//
    // Uncomment one of the following lines to change the color configuration.
    // [LLConfig sharedConfig].colorStyle = LLConfigColorStyleSystem;
    // [[LLConfig sharedConfig] configBackgroundColor:[UIColor orangeColor] textColor:[UIColor whiteColor] statusBarStyle:UIStatusBarStyleDefault];
    
    //####################### User Identity #######################//
    // Use this line to tag user. More config please see "LLConfig.h".
    [LLConfig sharedConfig].userIdentity = @"Miss L";
    
    //####################### Window Style #######################//
    // Uncomment one of the following lines to change the window style.
    // [LLConfig sharedConfig].windowStyle = LLConfigWindowNetBar;

    //####################### Features #######################//
    // Uncomment this line to change the available features.
    // [LLConfig sharedConfig].availables = LLConfigAvailableNoneAppInfo;
    
    // ####################### Start LLDebugTool #######################//
    // Use this line to start working.
    [[LLDebugTool sharedTool] startWorking];
    
    return YES;
}

In Swift

import LLDebugToolSwift

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        
        //####################### Color Style #######################//
        // Uncomment one of the following lines to change the color configuration.
        // LLConfig.shared().colorStyle = .system
        // LLConfig.shared().configBackgroundColor(.orange, textColor: .white, statusBarStyle: .default)
        
        //####################### User Identity #######################//
        // Use this line to tag user. More config please see "LLConfig.h".
        LLConfig.shared().userIdentity = "Miss L";
        
        //####################### Window Style #######################//
        // Uncomment one of the following lines to change the window style.
        // LLConfig.shared().windowStyle = .netBar
        
        //####################### Features #######################//
        // Uncomment this line to change the available features.
        // LLConfig.shared().availables = .noneAppInfo
        
        // ####################### Start LLDebugTool #######################//
        // Use this line to start working.
        LLDebugTool.shared().startWorking()
        
        return true
    }

日志

打印和保存一个日志。 更多的log宏信息查看LLLogHelper.h

In Objective-C

#import "LLDebug.h"

- (void)testNormalLog {
    // Insert an LLog where you want to print.
    LLog(@"Message you want to save or print.");
}

In Swift

import LLDebugToolSwift

    func testNormalLog() {
        // Insert an LLog where you want to print.
        LLog.log(message: "Message you want to save or print.")
    }

In Objective-C

#import "LLDebug.h"

- (void)testEventErrorLog {
    // Insert an LLog_Error_Event where you want to print an event and level log.
    LLog_Error_Event(@"The event that you want to mark. such as bugA, taskB or processC.",@"Message you want to save or print.");
}

In Swift

import LLDebugToolSwift

    func testEventErrorLog() {
        // Insert an LLog_Error_Event where you want to print an event and level log.
        LLog.errorLog(message: "Message you want to save or print.", event: "The event that you want to mark. such as bugA, taskB or processC.")
    }

网络请求

你不需要做任何操作,只需要调用了"startWorking"就可以监控大部分的网络请求,包括使用NSURLSession,NSURLConnection和AFNetworking。如果你发现某些情况下无法监控网络请求,请打开一个issue来告诉我。

崩溃

你不需要做任何操作,只需要调用"startWorking"就可以截获崩溃,保存崩溃信息、原因和堆栈信息,并且也会同时保存当次网络请求和日志信息。

App信息

LLDebugTool会监控app的CPU,内存和FPS。你可以更便捷的查看app的各种信息。

沙盒

LLDebugTool提供了一个快捷的方式来查看和操作沙盒文件,你可以更轻松的删除沙盒中的文件/文件夹,或者通过airdrop来分享文件/文件夹。只要是apple支持的文件格式,你可以直接通过LLDebugTool来预览。

更多使用

要求

LLDebugTool在支持ios8+,并且需要使用ARC模式。使用到的框架已经包含在大多数Xcode模板中:

结构

联系

联系

更新日志

可以在 CHANGELOG 中找到每个LLDebugTool版本的简要总结。

上一篇 下一篇

猜你喜欢

热点阅读