此错误是1小时,来自最近的iOS8更新。基本上,我们在NSUserDefault首选项中保存了一系列字典,之前它工作正常,现在还没有。
症状:应用程序读取该行并停止而不会崩溃或出现任何错误。没有任何消息。几分钟后什么也没有记录。
不知道为什么或如何,欢迎任何建议。
如果这有任何帮助,这就是崩溃的行:
[[NSUserDefaults standardUserDefaults] setObject:credentialsList forKey:CONFIG_Credentials];
此数组包含每个用户一个字典及其所有凭据。
答案 0 :(得分:0)
好的,我找到了解决此问题的方法。
我已经读过NSUSerDefaults对很多人(here for example)的问题,但在我的情况下就是这样:
在NSUserDefaults中保存NSMutableArray
现在我注意到保存数组工作得很好,只有可变的数组导致了问题(原因未知,请参阅上面的评论)。所以我只是创建了一个数组并用可变的数组启动它,并保存了数组而不是可变数组。
像这样:
//My mutable array is called credentialsList
NSArray *temp = [[NSArray alloc]initWithArray:credentialsList];
[[NSUserDefaults standardUserDefaults] setObject:temp forKey:CONFIG_Credentials];