常見永久數(shù)據(jù)保存方式:
一齐媒、NSUserDefaults:
保存基本數(shù)據(jù)類型流译、NSString,NSArray,NSDictionary.
注意:
1.NSUserDefaults不能保存自定義對(duì)象友酱。如果保存的是集合類(NSArray,NSDictionary)正驻,集合類里面也不能有自定義對(duì)象渔工。
2.一般保存用戶名,密碼陨闹,設(shè)置項(xiàng)(是否記住密碼、是否在2G/3G自動(dòng)下載圖片薄坏,是否離線下載)
3.用法簡(jiǎn)單趋厉,一般保存少量的數(shù)據(jù)。
用法:
//保存
[[NSUserDefaults standardUserDefaults] setObject: forKey:];
//取值
[[NSUserDefaults standardUserDefaults] objectForKey:];
//立即保存
[[NSUserDefaultsstandardUserDefaults]synchronize];
//移除
[[NSUserDefaults standardUserDefaults] removeObjectForKey:];
二胶坠、歸檔
保存自定義的對(duì)象君账,而且也是保存少量數(shù)據(jù)。
三沈善、文件保存
一般在iOS常用的是plist乡数,一般也是保存少量數(shù)據(jù)。一般保存數(shù)據(jù)類型是NSArray,NSDictioanary.
四闻牡、sqlite數(shù)據(jù)庫——iOS數(shù)據(jù)庫
適合保存大量數(shù)據(jù)净赴,而且sql增刪改查操作系統(tǒng)都做了優(yōu)化。需要寫sql語句澈侠。
五劫侧、CoreData
對(duì)sqlite的一個(gè)包裝,系統(tǒng)會(huì)自動(dòng)把實(shí)體轉(zhuǎn)為sql語句。好處使用簡(jiǎn)單烧栋,而且不需要寫sql語句写妥。適合保存大量數(shù)據(jù)。
六审姓、KeyChain
超過沙盒范圍的保存方式珍特,一般保存數(shù)據(jù)是:app刪除了,但是數(shù)據(jù)不刪除魔吐。
一般保存隱私數(shù)據(jù)(用戶密碼扎筒,token, cookie)