如何解决 NSInvalidArgumentException 错误?

Posted

技术标签:

【中文标题】如何解决 NSInvalidArgumentException 错误?【英文标题】:How to solve NSInvalidArgumentException error? 【发布时间】:2016-02-10 13:42:14 【问题描述】:

我的应用对用户来说间歇性崩溃,但很遗憾,我无法在我的任何设备上重现该问题。报错为:

由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“NSConcreteAttributedString initWithString:: nil value”

日志跟踪不清楚崩溃源。 我附上了一个日志跟踪。 我正在寻找任何可以帮助我追踪这一点的指针。

【问题讨论】:

欢迎来到 Stack Overflow!请阅读how to ask good questions 并尝试编辑您的问题。有了高质量的问题,您将更快地获得更好的答案。谢谢! 在你使用NSAttributedString的地方有一个nil值。 你应该在这里添加一些代码。以便您轻松找到发生崩溃的位置。 【参考方案1】:

崩溃的原因在你的标题中……

原因:'NSConcreteAttributedString initWithString:: nil value'

看起来您正在尝试从字符串创建属性字符串,但该字符串为 nil。

在执行 NSAttributeString initWithString 之前添加一个守卫,以确保字符串不为零,即

if (string) 
    NSAttributedString *attributedString = [[NSAttributedString alloc] initWithAttributedString:string];

    //other code etc...

【讨论】:

以上是关于如何解决 NSInvalidArgumentException 错误?的主要内容,如果未能解决你的问题,请参考以下文章

云原生景观:可观察性和分析解决了什么问题?如何解决的?

如何解决 Ajax 跨域请求不到的问题

如何解决包冲突问题

如何解决包冲突问题

如何解决ajax跨域问题

MySQL 的 10048问题,如何解决?