亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android開發(fā)的APP數(shù)據(jù)存儲研究

        2016-12-21 10:13:14謝原武龍文
        電腦知識與技術(shù) 2016年28期
        關(guān)鍵詞:數(shù)據(jù)存儲數(shù)據(jù)管理

        謝原武+龍文

        摘要: 作為一個完整的應(yīng)用程序,數(shù)據(jù)存儲操作是必不可少的。Android系統(tǒng)一共提供了四種數(shù)據(jù)存儲方式分別為File文件存儲、Shared Preferences存儲、ContentProvider存儲和SQLite數(shù)據(jù)庫存儲。該文以“愛自己”健康A(chǔ)PP為例,簡單地介紹了這些本地數(shù)據(jù)存儲的原理和特點,并對其優(yōu)缺點進行了分析。

        關(guān)鍵詞:數(shù)據(jù)存儲,數(shù)據(jù)管理,存儲機制

        中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)28-0012-02

        Abstract: As a complete application, data storage operation is necessary. The Android system provides a total of four kinds of method of data storage: the File files are stored and Shared Preferences, ContentProvider storage and SQLite database storage. Based on this, through to this topic to complete the "love yourself" health APP, simply introduces the principle and characteristics of the local storage, and analyses their advantages and disadvantages.

        Key words: data storage; data management; storage mechanism

        1 引言

        隨著社會的飛速發(fā)展和人民生活水平的進一步提高,人們已經(jīng)不僅僅滿足于生活的溫飽和娛樂,而是更多地去關(guān)注自身的身體健康,去追求健康的生活方式。本課題開發(fā)和設(shè)計了一款基于Android平臺的“愛自己”健康醫(yī)療APP,算法和數(shù)據(jù)是這個軟件的程序運行的核心,相應(yīng)的Android開發(fā)平臺提供了各種數(shù)據(jù)存儲機制,使得這個健康A(chǔ)PP在進行數(shù)據(jù)存儲和管理時可以選擇使用不同的方式。本文對Android系統(tǒng)提供的存儲方式進行了簡單研究,以及本次創(chuàng)新項目完成的“愛自己”健康A(chǔ)PP的存儲方式選擇。

        2 數(shù)據(jù)存儲方式

        2.1 File文件存儲

        File文件存儲就是以I/O流形式來對數(shù)據(jù)進行保存和讀取,可以直接將數(shù)據(jù)輸出到文件中,以文件的形式存入手機內(nèi)存或者SD卡中,默認的存儲目錄是/data/data/Package_Name/files[1]。這是個默認私有的文件,在訪問這文件的時候需要設(shè)置操作模式為可讀或可寫。它主要是提供了openFileOutput()和openFileInput方法對文件進行讀寫。文件存儲是Android中最基本的一種數(shù)據(jù)存儲方式,不僅能將大量的數(shù)據(jù)存儲到系統(tǒng)中,還能存儲到手機SD卡上,進而節(jié)省了手機自身的存儲空間,比數(shù)據(jù)庫存儲實現(xiàn)簡單。但是它的缺點是更新數(shù)據(jù)比較麻煩,數(shù)據(jù)不能共享和進行條件訪問。

        2.2 Shared Preferences存儲

        Shared Preferences是在Android平臺上使用的一個輕量級存儲類,一般用來保存一些簡單的配置信息,實質(zhì)上是以.xml文件形式來存儲key-value鍵值對數(shù)據(jù),其對應(yīng)的文件可以是在/data/data/ Package_Name/shared_prefs文件夾中找到,跟文件存儲一樣,這樣的文件也是默認私有的,在多個應(yīng)用程序之間是無法共享數(shù)據(jù)的。Shared Preferences對象本身只能獲取數(shù)據(jù),并不能支持數(shù)據(jù)存儲和數(shù)據(jù)修改的操作,只能通過Shared Preferences.Editor()對象來進行這些操作。Shared Preferences對象不用像數(shù)據(jù)庫管理那樣創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、寫SQL語句等操作,相對而言快速、方便、簡潔。但是這種方式只能存儲boolean、int、float、long和String5種簡單數(shù)據(jù)類型,而且數(shù)據(jù)是以XML格式存儲到手機內(nèi)存中,無法存儲大量的數(shù)據(jù)。

        2.3 ContentProvider存儲

        ContentProvider為存儲和獲取數(shù)據(jù)提供了統(tǒng)一的接口。ContentProvider一般使用表的形式來組織數(shù)據(jù),每一個ContentProvider都對外擁有一個公共的URL,Android設(shè)備上的任何程序都可以通過這個URL來訪問或?qū)?shù)據(jù)進行操作,實現(xiàn)了應(yīng)用程序之間的數(shù)據(jù)共享[2]。用戶一般可以通過ContentProvider類所提供的query(),insert(),update(),getType等方法去訪問數(shù)據(jù)。嚴格意義上來說,ContentProvider并不是一種數(shù)據(jù)存儲方式,而是一種對數(shù)據(jù)庫中數(shù)據(jù)的封裝,最終會以.db文件形式存儲在手機上,它的訪問方式與數(shù)據(jù)庫的訪問方式基本相似,操作起來也與數(shù)據(jù)庫相似,基本優(yōu)缺點與數(shù)據(jù)庫一樣,但是在Android設(shè)備中的各個應(yīng)用程序間的數(shù)據(jù)應(yīng)該是相互保密的,所以這種存儲方式在Android開發(fā)過程中比較少用。

        2.4 SQLite數(shù)據(jù)庫存儲

        SQLite是一個可用于嵌入式設(shè)備開發(fā)的強大的輕量級數(shù)據(jù)庫,支持SQL語言。它資源占用率非常低、運行效率高,具有獨立性、隔離性、跨平臺、安全性等多種特性,特別適合于嵌入式設(shè)備開發(fā),目前已經(jīng)應(yīng)用在很多嵌入式設(shè)備開發(fā)領(lǐng)域中。在使用SQLite時,最常用到兩個類:SQLiteDatabase和SQLiteOpenHelper。

        SQLiteDatabase是Android的核心類之一,該類封裝了一系列數(shù)據(jù)庫操作的API,對數(shù)據(jù)庫進行增、刪、改、查等操作,進而完成對數(shù)據(jù)庫的創(chuàng)建、刪除。

        除了SQLiteDatabase類外,Android平臺還給開發(fā)者提供了一個強大的輔助類SQLiteOpenHelper。SQLiteOpenHelper是一個抽象類,通過它可以很好的對數(shù)據(jù)庫進行創(chuàng)建和數(shù)據(jù)庫的版本更新,可以通過繼承SQLiteOpenHelper類,實現(xiàn)它的兩個抽象方法,onCreate(SQLiteDatabase db)和onUpgrade(SQLiteDatabse dv, int oldVersion,int new Version),其中onCreate()一般是用來檢查數(shù)據(jù)庫是否存在和創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表的,而onUpgrade()多數(shù)用來檢查和更新數(shù)據(jù)庫的版本。

        3 “愛自己”APP的數(shù)據(jù)庫設(shè)計

        由于本次創(chuàng)新項目的“愛自己”健康醫(yī)療APP需要能夠?qū)崿F(xiàn)本地和遠程的歷史數(shù)據(jù)查詢功能,因此謹慎設(shè)計一個合理的數(shù)據(jù)庫很有必要。結(jié)合上文的簡述和比較,在Android開發(fā)中,數(shù)據(jù)存儲主要有四大存儲方式:File文件存儲,Shared Preferences存儲,ContentProvider存儲以及SQLite數(shù)據(jù)庫存儲。其中文件存儲主要是用輸入輸出流控制,如果想對文件更加方便地訪問控制,直接使用流是最好的選擇。Shared Preferences存儲是Android中最簡單的數(shù)據(jù)存儲方式,主要處理key-value鍵值對數(shù)據(jù),通常Shared Preferences將數(shù)據(jù)文件寫在手機內(nèi)存私有的目錄中,并且以xml文件的格式存儲。ContentProvider存儲是Android系統(tǒng)中定義的應(yīng)用程序與其他應(yīng)用程序共享數(shù)據(jù)的橋梁,設(shè)備上的程序都通過ContentProvider的URI供其他應(yīng)用程序使用。Android存儲方案的核心是SQLite數(shù)據(jù)庫,它是專門為嵌入式設(shè)備而設(shè)計的輕量級的數(shù)據(jù)庫,執(zhí)行簡單地SQL語句甚至比MySQL和Postgresql還快,Android系統(tǒng)對于操作SQLite數(shù)據(jù)庫提供了很多java工具類,從而方便我們進行Android平臺數(shù)據(jù)存儲功能應(yīng)用開發(fā)[3]。而此次的“愛自己”APP要設(shè)計的軟件數(shù)據(jù)存儲部分就是使用Android SQLite數(shù)據(jù)庫進行數(shù)據(jù)存儲功能設(shè)計的。

        “愛自己”APP要實現(xiàn)數(shù)據(jù)存儲的需求主要有:對于用戶的注冊信息存儲、用戶的健康數(shù)據(jù)測量的數(shù)據(jù)存儲和對應(yīng)用戶的健康數(shù)據(jù)反饋的數(shù)據(jù)存儲。根據(jù)這個需求,設(shè)計了數(shù)據(jù)庫personinfo.db,主要包含四張表,由于Android平臺下的SQLite數(shù)據(jù)庫并不是全部都支持外鍵功能,因此,在這四張數(shù)據(jù)表的設(shè)計過程中都沒有用到外鍵。四張表分別包含有用戶信息表,用戶攝食記錄表,食物所對應(yīng)的卡路里表,用戶健康狀況反饋表。其中用戶信息表主要是記錄包含了用戶的個人信息,用戶攝食記錄表主要是記錄了對應(yīng)用戶的攝入各種食物的信息,食物所對應(yīng)的卡路里表主要是記錄了各種食物的卡路里量值,用戶健康狀況反饋表主要是記錄了系統(tǒng)根據(jù)對應(yīng)用戶的健康狀況給出的建議的信息。4張表的具體信息如下:

        在“愛自己”的整個數(shù)據(jù)存儲設(shè)計實現(xiàn)上使用SQLite創(chuàng)建數(shù)據(jù)庫主要是通過繼承SQLite OpenHelper類來完成創(chuàng)建以及各種數(shù)據(jù)庫的操作。

        4 結(jié)論

        整個社會信息化程度的不斷加深,基于Android智能設(shè)備的應(yīng)用程序的不斷更新與發(fā)展,算法與數(shù)據(jù)依舊是一個計算機程序運行的核心。一個完整的應(yīng)用程序開發(fā)中選擇一個與之相匹配的數(shù)據(jù)存儲方式,便會極大地提高整個程序軟件的總體運行性能。“愛自己”是一款綜合型的APP,無論是實時數(shù)據(jù)還是歷史數(shù)據(jù),它都有對數(shù)據(jù)進行快速分析和處理的功能,在其數(shù)據(jù)庫設(shè)計的過程中仍然存在著不足,但隨著智能設(shè)備傳感器的不斷普及,它對傳感器的調(diào)用也讓用戶對實時數(shù)據(jù)和歷史數(shù)據(jù)都有一個深刻的認識,能在使用時充分結(jié)合兩者而達到靈活轉(zhuǎn)換的目的。相信隨著智能時代的到來,算法和數(shù)據(jù)仍然是這一時代智能設(shè)備發(fā)展的一個主流研究。

        參考文獻:

        [1] 傳智播客高教產(chǎn)品研發(fā)部.Android移動應(yīng)用基礎(chǔ)教程[M]. 中國鐵道出版社,2015.

        [2] 朱桂英.Android開發(fā)應(yīng)用從入門到精通[M].中國鐵道出版社,2011.

        [3] 張永瑞.基于Android及Java Web平臺的個人健康信息管理系統(tǒng)[M].2014.

        [4] 彭艷,楊歐.Android平臺的數(shù)據(jù)存儲技術(shù)[J].計算機系統(tǒng)應(yīng)用,2012(5).

        猜你喜歡
        數(shù)據(jù)存儲數(shù)據(jù)管理
        企業(yè)級BOM數(shù)據(jù)管理概要
        定制化汽車制造的數(shù)據(jù)管理分析
        海洋環(huán)境數(shù)據(jù)管理優(yōu)化與實踐
        CTCS-2級報文數(shù)據(jù)管理需求分析和實現(xiàn)
        列控數(shù)據(jù)管理平臺的開發(fā)
        大數(shù)據(jù)時代檔案信息建設(shè)的認識和實踐
        淺談電力大數(shù)據(jù)平臺關(guān)鍵技術(shù)研究與應(yīng)用
        開源數(shù)據(jù)庫數(shù)據(jù)存儲的實現(xiàn)路徑分析
        哈希算法在物聯(lián)網(wǎng)數(shù)據(jù)存儲中的應(yīng)用
        淺談信息系統(tǒng)工程和POJO模型組件開發(fā)
        手机在线看永久av片免费| 日本一区二区不卡二区| 国产区女主播一区在线| 男女性杂交内射妇女bbwxz| 中文字幕久无码免费久久| 天天干夜夜躁| 91成人自拍视频网站| 国语淫秽一区二区三区四区| 国模冰莲自慰肥美胞极品人体图| 福利体验试看120秒| 亚洲精品国产老熟女久久| 青青草在线成人免费视频| 在线观看国产视频你懂得| 山外人精品影院| 丰满五十六十老熟女hd | 国产精品久久久久免费看| 国产三级精品三级在专区中文| 亚洲最新国产av网站| 熟女少妇精品一区二区| 无码国产精品一区二区vr老人| 亚洲成a人片在线观看高清| av资源在线免费观看| 蜜臀久久99精品久久久久久| 亚洲精品乱码久久久久久日本蜜臀| 连续高潮喷水无码| 蜜桃视频高清在线观看| 亚洲av乱码二区三区涩涩屋| 香蕉久久久久久久av网站| 日本强好片久久久久久aaa| 日韩精品精品一区二区三区| 狼人精品剧情av在线观看| 色综合久久无码五十路人妻 | 丰满少妇愉情中文字幕18禁片| 国产 无码 日韩| 日本一区二区三级在线| 婷婷丁香五月激情综合| 3344永久在线观看视频| 一区二区三区中文字幕有码| 精品人妻久久一日二个| 男女猛烈xx00免费视频试看| 免费无码成人av在线播|