swift 自定义log

1 相关知识点

(1)获取所在文件

let file : String = #file
// 获取文件的最后路径
let filepath = (file as NSString).lastPathComponent

(2)获取在的方法

let fun = #function

(3)获取在的行数

let line : Int = #line

2 自定义log

(1)在AppDelegate中定义一个全局函数

func JLLog<T>(message : T, file : String = #file, line : Int = #line){
    
    #if DEBUG
    
    let filepath = (file as NSString).lastPathComponent
    
    let fun = #function
    print("\(filepath)-\(fun)-[\(line)]-\(message)")
    
    #endif
}

(2)调用的地方传入message参数,比如:

JLLog(message: "123")

(3)在debug下打印,在 release下不打印:
默认情况下,debug模式有DEBUG标签,根据DEBUG标签来判断:



测试:
在debug下有打印,在release下没有打印


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

相关阅读更多精彩内容

  • NO.1 先了解下 Debug 和 Release 的区别 Release是发行版本,比Debug版本有一些优化,...
    浮桥小麦阅读 4,365评论 0 0
  • 在开发过程中,打印Log进行调试是必不可少的,但是在上线之后这些Log会很消耗性能资源,同时我们又想在Log中显示...
    Vonkin阅读 9,736评论 0 3
  • Swift中打印不像OC那样每次打印系统会自己打印出时间和所在类名,所以在swift中要自己封装.自定义Log要用...
    Mortimey_yt阅读 3,150评论 0 1
  • 在项目开发中调试程序或者确定一些数据时要经常用到打印,那我们如何使打印用起来更方便,这需要自定义打印。下面我们开始...
    HeartPower阅读 2,738评论 0 1
  • 昨天睡午觉的时候,半睡半醒之间,突然有一种感觉,人的一生是很短暂的。也许一辈子之后,再也难以想起,曾经有一个人做过...
    剑飞在思考阅读 6,518评论 0 0

友情链接更多精彩内容