排查CUICatalog: Invalid asset name supplied: ''问题

最新项目中一直在打印一个log CUICatalog: Invalid asset name supplied: '',很奇怪,代码都是正常的怎么突然打印出这个log呢?经过调研发现之所以产生这个log的原因是[UIImage imageNamed:@""]传了一个空字符串来获取图片,因为项目中使用[UIImage imageNamed:]的地方特别多,单独依据log很难定位到具体是哪里的代码出现问题,这里给大家提供一个定位的方法。

通过添加一个symbolic breakpoint来定位这个bug。

image

这里需要说明的是$arg3用于模拟器,$r0用于真机,另外图上的方式是用来比较传入的imageName为nil的情况,我们还可以修改对应的匹配规则查找字符串为@""的情况,(int)[$arg3 length] == 0,通过这个断点就能快速的帮我们定位出传入空字符串的地方。

你可能感兴趣的:(排查CUICatalog: Invalid asset name supplied: ''问题)