在 NSMutablearray 中添加新实例时出现奇怪的崩溃

Posted

技术标签:

【中文标题】在 NSMutablearray 中添加新实例时出现奇怪的崩溃【英文标题】:Weird crash when adding new instance in NSMutablearray 【发布时间】:2018-05-02 10:30:44 【问题描述】:

编辑:ios 版本:iOS 10

我对 crashlytics 的以下崩溃报告感到困惑:

CoreFoundation             0x142ea9823 CFStringConvertNSStringEncodingToEncoding + 806
MyApp                      0x100d3625c -[MyClass myMethod:] (Myclass.m:100)

这里是实现:

NSMutableArray *myActions = [NSMutableArray array];
UNNotificationAction *action = [UNNotificationAction actionWithIdentifier:@"actionId" title:@"title" options:UNNotificationActionOptionNone];
[myActions addObject:action];//Line no. 100

我无法在开发环境中看到崩溃,但是当我在 AppStore 中部署应用程序时,会在同一行中获取报告的崩溃次数[myActions addObject:action];

【问题讨论】:

您能分享一下 Crashlytics 的 完整 调用堆栈吗?或者(甚至更好)附上崩溃报告。 【参考方案1】:

这可能发生在版本 10.0 之前的较低版本的 iOS 中,因为 UNNotificationAction Api 在等于或大于 iOS 10.0 的 iOS 版本中可用,您可以找到更多详细信息 here。也许您的部署目标小于 10.0?

【讨论】:

以上是关于在 NSMutablearray 中添加新实例时出现奇怪的崩溃的主要内容,如果未能解决你的问题,请参考以下文章

将对象 NSMutableArray 添加到 NSDictionary

如何在 NSMutableArray 中插入新行?

取消引用(发布?)NSMutableArray

使用仅来自一个 NSMutableArray 的多个部分填充 tableview

NSMutableArray:发送到实例的无法识别的选择器

在 C++ 中将类实例添加到对象层次结构时出现问题