iOS小记--'Invalid parameter not satisfying:XX'

过程

中午一觉醒来,哼着小曲愉快地debug中。可惜好景不长,正因为解决了一个棘手的逻辑问题而沾沾自喜时,在控制台收到如图错误,程序闪退了。明明上午还是好好的,不会是刚刚改出来的问题吧...

Console_log.png

怎么办?顺着调用栈查呗,找到这个函数appendPartWithFormData:,翻一下AF的代码,发现是它这里有个断言。查一下宏定义,果然见到了熟悉的那句话。

AF_code.png
Macro_assert.png

结论

我们知道断言在Release模式下是不执行的,这里的验证空在用户手上能不能挂掉看命。不过既然AF都作了这样的判断,还是应该在程序上处理一些异常的逻辑。
关于断言如果不熟悉可以点上面的那个链接,这位兄弟整理的很详细。

你可能感兴趣的:(iOS小记--'Invalid parameter not satisfying:XX')