安卓androidstudio访问本地接口_安卓开发之数据存储在本地的四种方式
?
安卓開發(fā)之?dāng)?shù)據(jù)存儲(chǔ)在本地的四種方式
本地?cái)?shù)據(jù)存儲(chǔ),在安卓開發(fā)過程中是不可避免的一個(gè)話題。這些本地的數(shù)據(jù)可能是用戶的設(shè)置,程序的設(shè)置,用戶的數(shù)據(jù)圖片, 也可能是網(wǎng)絡(luò)傳輸?shù)囊恍┚彌_數(shù)據(jù)。
基本上我們有4種方法可以存儲(chǔ)安卓程序的數(shù)據(jù)。
第1種是Shared Preference(共享選項(xiàng))。
這種方法適合于存儲(chǔ)一些基本數(shù)據(jù)類型的數(shù)據(jù)。他提供的是key-value(鍵值)的方式。鍵必須是字符串類型的,值可以是布爾型的,浮點(diǎn)型的,整型的,長整型的,或者字符串類型的。
這種方式是用一個(gè)xml文件在私有的目錄里面存放這些數(shù)據(jù)的。一個(gè)程序可以有多個(gè)這樣的文件。
下面一段代碼用來描述寫入數(shù)據(jù)。
第2種是Internal Storage(內(nèi)部存儲(chǔ))。
這種方式用來存儲(chǔ)一些復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。因?yàn)槭莾?nèi)部存儲(chǔ)方式,所以其他程序無法訪問。這樣可以保證數(shù)據(jù)的安全性。當(dāng)你的程序卸載以后,這些內(nèi)部存儲(chǔ)數(shù)據(jù)也會(huì)被清除掉。
這類數(shù)據(jù)一般包括像一些對(duì)象,或者本地需要一些類似文件系統(tǒng)訪問模式的數(shù)據(jù)。
下面一段代碼用來寫入數(shù)據(jù)。
第3種是External Storage(外部存儲(chǔ))。
這種存儲(chǔ)方式用來存儲(chǔ)一些文件對(duì)象。這些文件可以被其他程序來訪問。要使用外部存儲(chǔ),需要申請(qǐng)?zhí)貏e的寫權(quán)限WRITE_EXTERNAL_STORAGE。如果其他程序需要訪問這些外部存儲(chǔ)數(shù)據(jù)的話,也需要申請(qǐng)讀權(quán)限READ_EXTERNAL_STORAGE 。
從安卓4.4開始,用戶可以把自己的數(shù)據(jù)寫入一個(gè)私有的外部存儲(chǔ)文件夾中,如果這樣的話,用戶就不需要申請(qǐng)寫權(quán)限WRITE_EXTERNAL_STORAGE。當(dāng)用戶卸載程序的時(shí)候,這個(gè)文件夾也會(huì)被清除。
從安卓7.0開始, 安卓程序可以申請(qǐng)?jiān)L問特定的文件目錄,而不是申請(qǐng)?jiān)L問整個(gè)外部存儲(chǔ)空間。這樣可以保證數(shù)據(jù)的安全性,防止誤操作。用戶只可以訪問圖片目錄,或者文檔目錄。
第4種是SQLite database(數(shù)據(jù)庫)。
這種方式需要了解一些數(shù)據(jù)庫方面的知識(shí)。適合存儲(chǔ)相對(duì)結(jié)構(gòu)化的數(shù)據(jù)。尤其是表結(jié)構(gòu)。數(shù)據(jù)庫是跟當(dāng)前程序綁定的其他程序無法訪問。
下面一段代碼用來展示寫入數(shù)據(jù)。
這里是丁哥開講,歡迎留言進(jìn)行進(jìn)一步的討論,謝謝。
與此同時(shí)請(qǐng)關(guān)注一下我們的合作伙伴。
總結(jié)
以上是生活随笔為你收集整理的安卓androidstudio访问本地接口_安卓开发之数据存储在本地的四种方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mkdir-yum-tree命令应用案例
- 下一篇: mysql双机热备 配置文件,MYSQL