一般獲取本地?cái)?shù)據(jù)是從plist文件中讀取JSON數(shù)據(jù)。
發(fā)展壯大離不開廣大客戶長期以來的信賴與支持,我們將始終秉承“誠信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠服務(wù)每家企業(yè),認(rèn)真做好每個(gè)細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及成都餐廳設(shè)計(jì)等,在網(wǎng)站建設(shè)公司、成都全網(wǎng)營銷、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。
讀取數(shù)據(jù):
NSString
*plistPath
=
[[NSBundle
mainBundle]
pathForResource:@"city"
ofType:@"plist"];
NSArrary
*cityArray
=
[[NSArray
alloc]initWithContentsOfFile:plistPath];
這里的cityArray根據(jù)你存在plist中的數(shù)據(jù)類型來確定,如果plist中是字典類型,那么你這里需要使用NSDictionary去存儲(chǔ)你從plist中獲取到的數(shù)據(jù)。
至于本地存儲(chǔ)數(shù)據(jù)的話根據(jù)你項(xiàng)目的具體功能來設(shè)計(jì),一般的小型數(shù)據(jù)如用戶昵稱、手機(jī)號(hào)等使用NSUserDefault即可,但是如果是大量數(shù)據(jù)如賬單類app中的賬單數(shù)據(jù)那么此時(shí)需要考慮使用sqlite3去存儲(chǔ)數(shù)據(jù),至于密碼之類就需要使用NSKeydArchiver去存儲(chǔ)。
簡單的數(shù)據(jù),對(duì)安全性要求不高的數(shù)據(jù)可以使用 NSUserDefaults (本質(zhì)上是一個(gè)plist)來存儲(chǔ)
相對(duì)復(fù)雜點(diǎn)的數(shù)據(jù),可以使用coredata (本質(zhì)上是使用sqlite 來存儲(chǔ))
對(duì)安全性要求較高的數(shù)據(jù),可以使用keychain 來存儲(chǔ)。
1.(1) 用戶默認(rèn)設(shè)置 – 這種情況通常不需要用戶干預(yù),如游戲通關(guān)信息,Video
播放記錄,或者 App 退出之后,下次進(jìn)入時(shí),希望恢復(fù)到退出時(shí)的情況。
2.(2) 設(shè)置束(Settings Bundle)-- 提供了一個(gè)通過 iPhone、iPad的設(shè)置
(Settings)應(yīng)用程序進(jìn)行配置的接口。
3.(3) 直接訪問文件系統(tǒng) – 讀寫屬于當(dāng)前 App 的 iOS 文件系統(tǒng)部分的文件。
4.(4) SQLite 數(shù)據(jù)庫 -- 是嵌入式的和輕量級(jí)的 SQL 數(shù)據(jù)庫,SQLite 是由 C實(shí)現(xiàn)的。
5.(5) 遠(yuǎn)端數(shù)據(jù)庫 – 這個(gè)一般由 App 調(diào)用遠(yuǎn)端的 RESTFul WCF 服務(wù),將JSON
或者 XML 數(shù)據(jù)傳遞給遠(yuǎn)端的 Web 服務(wù),讀寫數(shù)據(jù)庫的邏輯完全在 Web 服 務(wù)端實(shí)現(xiàn)。比如,用戶在iPhone/iPad 終端 App 提交了訂單,訂單數(shù)據(jù)當(dāng)然需要寫入遠(yuǎn)端 SQL Server 或Oracle 數(shù)據(jù)庫
一、 首先簡述一下 Userdefault (介紹使用了該作者的文章)
1.適合存儲(chǔ)輕量級(jí)的本地?cái)?shù)據(jù)。
比如用戶id? 用戶的登錄token什么的? 這種比較短小的數(shù)據(jù)
2.NSUserDefaults支持的數(shù)據(jù)格式有:NSNumber、NSData、NSDate、NSString、NSArray、NSDictionary、BOOL。
3.以鍵值對(duì)的形式進(jìn)行存儲(chǔ)。
4.存儲(chǔ)時(shí)間為整體應(yīng)用程序的存儲(chǔ)時(shí)間,如果想需要?jiǎng)h除,需要?jiǎng)h除整體應(yīng)用程序。
?? 存儲(chǔ)聲明的時(shí)候因?yàn)槭莿?dòng)態(tài)的,先聲明再調(diào)用,聲明存儲(chǔ)的時(shí)候不會(huì)出現(xiàn)異常提示,但執(zhí)行的時(shí)候會(huì)出現(xiàn) ? --斷言--(因?yàn)榇鎯?chǔ)對(duì)象在這里編譯是nil)