作者y03131003 (Jimmy)
看板MacDev
标题Re: [问题] iPhone 4s 存资料到 NSUserDefault
时间Sun Aug 3 23:43:23 2014
※ 引述《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..
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.112.218.72
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MacDev/M.1407080606.A.AFD.html