@niwakk7 iPhoneアプリ作っていますよ

iPhoneアプリ作ってます。調べたことを、ゆるく残していきます。

NSUserDefaultsにNSMutableArrayの配列をsetObjectしようとすると、固まる。

不正アクセスとかで落ちるわけではなく、ほんとうにパタッと固まってしまう。iOS7まではできたのが、とたんに動かなくなった。

どうやら、NSMutableArrayだとだめらしい。

宣言をみると、

- (void)setObject:(id)value forKey:(NSString *)defaultName;

なんだが、NSArrayしか受け付けてくれない。
ということで、いったんコピーしたらうまくできた。

NSArray *newArray = [mutableArray copy];

]
objective c - iOS 8 freezes at updating UserDefaults object - Stack Overflow