Re: [问题] iPhone 4s 存资料到 NSUserDefault

楼主: y03131003 (Jimmy)   2014-08-03 23:43:23
※ 引述《darktt (小朱)》之铭言:
: ※ 引述《y03131003 (Jimmy)》之铭言:
: : 我有一个array(里面最多有150个物件)里面装的都是我自己的class object
: : 所以我把array里的东西用以下的方法转成NSData再存进NSUserDefault
: : NSData *encodedObject = [NSKeyedArchiver
: : archivedDataWithRootObject:objectInArray];
: : 这方法在 iPhone 5 以上的机种都没问题
: : 但是在 iPhone 4s (iOS 7) 却会严重影响效能..
: : 存盘的时间要非常久(5~10秒) 有时还会因为 memory pressure 而闪退
: : 请问有什么好办法吗?
: : 换成 SQLite 或是 CoreData 能改善吗?
: NSUserDefaults 也能存 array 的资料,
: 为什么转成 NSData 才能存?
: 是为了加密吗?
: 还是有什么理由?
array里装的物件都是我自己建立的class的物件
比如说Friend这个class
里面有NSString *name
NSString *email
这样array没办法直接存进NSUserDefault
要在Friend class里写encoder
然后才把Friend物件转成NSData放进array存进NSUserDefault..
作者: whitefur (白毛)   2014-08-04 10:39:00

Links booklink

Contact Us: admin [ a t ] ucptt.com