Swift3.x - CustomLog

自定义Log
在开发中打印一些信息,对于调试程序是必然的!当然这是指在Debug的情况下,在Release情况下,就不需要打印了!
下面我们自定义Log输出:

//MARK:--自定义Log
func CustomLog<T>(message: T, fileName: String = #file, funcName: String = #function, lineNumber: Int = #line){
    let fileNameComponent = (fileName as NSString).lastPathComponent
    print("__FILE__:\(fileNameComponent) __LINE__:\(lineNumber) __INFO__:\(message)")
}

注意:

  • 在Swift中不存在#pragma mark -注释,而是改为了//MARK:注释
  • 在Swift3.0中废弃了__LINE____FUNCTION____FILE__等�宏定义,而是改为使用#line#function#file

如何设置自定义Log的Debug和Release模式
设置如图:

设置Debug标志

上图中的步骤4中的标志格式为:-D 你的标志,其中"你的标志"可以随便设置字符传,但是需要你设置的简明扼要!不能省略!
然后自定义的Log可以这样写:

//MARK:-自定义Log
func CustomLog<T>(message: T, fileName: String = #file, funcName: String = #function, lineNumber: Int = #line){
    #if DEBUG
    let fileNameComponent = (fileName as NSString).lastPathComponent
    print("__FILE__:\(fileNameComponent) __LINE__:\(lineNumber) __INFO__:\(message)")
    #endif
}

OK!这样设置之后,在Debug模式下,会有Log,在Release模式下,就不会有Log啦!
注意:推荐将此自定义Log方法,定义在AppDelegate.swift文件中,并且在类方法的外面定义!
Zeb

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,273评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,803评论 4 61
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,178评论 25 709
  • 这是一个倍儿爽的三月。 那么,谁能告诉我。 2017中山红博会发生了什么?
    红木大师阅读 2,707评论 0 0
  • 杨千嬅的歌《假如让我说下去》里有一句歌词:我怕死,你可不可以暂时不要睡。 我怕死 今天觉得舌头边边有点硬硬的,虽然...
    茶也不甜阅读 1,594评论 0 0

友情链接更多精彩内容