




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Android項(xiàng)目開(kāi)發(fā)任務(wù)6-7:ContentProvider使用導(dǎo)入任務(wù)任務(wù)實(shí)施相關(guān)知識(shí)拓展訓(xùn)練導(dǎo)入任務(wù)進(jìn)行Android應(yīng)用軟件開(kāi)發(fā),需要掌握其數(shù)據(jù)存儲(chǔ)技術(shù)和操作,本次任務(wù)將使用ContentProvider完成數(shù)據(jù)共享。導(dǎo)入任務(wù)【任務(wù)目標(biāo)】使用ContentProvider實(shí)現(xiàn)程序數(shù)據(jù)的共享。導(dǎo)入任務(wù)【任務(wù)描述】除了共享內(nèi)存(如SDCard)的數(shù)據(jù)外,其他包括SQLite、SharedPreferences等都是僅限于被當(dāng)前所創(chuàng)建的應(yīng)用訪問(wèn),而無(wú)法使它們的數(shù)據(jù)在應(yīng)用程序之間交換數(shù)據(jù)。因此,Android系統(tǒng)提供了ContentProvider。ContentProvider是Android系統(tǒng)中不同應(yīng)用程序之間進(jìn)行數(shù)據(jù)交換的標(biāo)準(zhǔn)API。本次任務(wù)將介紹ContentProvider使用,以及其實(shí)現(xiàn)數(shù)據(jù)共享的使用方法。導(dǎo)入任務(wù)【任務(wù)分析】本次任務(wù)完成一個(gè)數(shù)據(jù)添加的界面設(shè)計(jì)和功能實(shí)現(xiàn)。界面設(shè)計(jì)為1個(gè)Button和1個(gè)ListView,采用垂直線性布局設(shè)計(jì)。當(dāng)點(diǎn)擊“添加記錄”按鈕Button時(shí),將程序中設(shè)定的數(shù)據(jù)添加到指定的數(shù)據(jù)表中,并將數(shù)據(jù)在ListView中顯示出來(lái)。任務(wù)實(shí)施創(chuàng)建項(xiàng)目后進(jìn)行界面設(shè)計(jì)編寫(xiě)實(shí)現(xiàn)功能的程序代碼運(yùn)行應(yīng)用程序并查看結(jié)果任務(wù)實(shí)施操作1:設(shè)計(jì)軟件界面。創(chuàng)建一個(gè)【AndroidApplicationProject】,將該項(xiàng)目命名為“contentproviderdemo”。編寫(xiě)主界面xml代碼,在項(xiàng)目“contentproviderdemo”中雙擊打開(kāi)主界面程序“activity_main.xml”,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成界面代碼的編寫(xiě)。任務(wù)實(shí)施操作2:創(chuàng)建列表界面。在layout文件夾中創(chuàng)建界面程序“l(fā)istviewitem.xml”,雙擊打開(kāi)界面程序“l(fā)istviewitem.xml”,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成界面代碼的編寫(xiě)。任務(wù)實(shí)施操作3:編寫(xiě)SQLiteOpenHelper輔助類(lèi)。創(chuàng)建一個(gè)Java類(lèi),命名為“MySQLiteOpenHelper”,使該類(lèi)繼承于SQLiteOpenHelper類(lèi)。雙擊打開(kāi)src目錄中新創(chuàng)建的“MySQLiteOpenHelper.java”程序,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成MySQLiteOpenHelper類(lèi)的編寫(xiě)。任務(wù)實(shí)施操作4:創(chuàng)建DTO類(lèi)。創(chuàng)建一個(gè)Java類(lèi),命名為“UserinfoDto”。雙擊打開(kāi)src目錄中新創(chuàng)建的“UserinfoDto.java”程序,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成UserinfoDto類(lèi)的編寫(xiě)。任務(wù)實(shí)施操作5:創(chuàng)建DAO類(lèi)。創(chuàng)建一個(gè)Java類(lèi),命名為“UserinfoDao”。雙擊打開(kāi)src目錄中新創(chuàng)建的“UserinfoDao.java”程序,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成UserinfoDao類(lèi)的編寫(xiě)。任務(wù)實(shí)施操作6:編寫(xiě)ContentProvider類(lèi)。創(chuàng)建一個(gè)Java類(lèi),命名為“UserinfoProvider”,使該類(lèi)繼承于ContentProvider類(lèi)。雙擊打開(kāi)src目錄中新創(chuàng)建的“UserinfoProvider.java”程序,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成UserinfoProvider類(lèi)的編寫(xiě)。任務(wù)實(shí)施接上程序。任務(wù)實(shí)施操作7:編寫(xiě)功能代碼。雙擊打開(kāi)src目錄中的“MainActivity.java”程序,在代碼編輯窗口輸入對(duì)應(yīng)程序代碼,完成功能代碼的編寫(xiě)。相關(guān)知識(shí)認(rèn)識(shí)ContentProviderContentProvier共享數(shù)據(jù)方式技術(shù)知識(shí)知識(shí)點(diǎn)1:認(rèn)識(shí)ContentProviderContentProvider屬于Android應(yīng)用程序的組件之一,作為應(yīng)用程序之間唯一的共享數(shù)據(jù)的途徑,ContentProvider主要的功能就是存儲(chǔ)并檢索數(shù)據(jù)以及向其他應(yīng)用程序提供訪問(wèn)數(shù)據(jù)的借口。Android系統(tǒng)為一些常見(jiàn)的數(shù)據(jù)類(lèi)型(如音樂(lè)、視頻、圖像、手機(jī)通信錄聯(lián)系人信息等)內(nèi)置了一系列的ContentProvider,這些都位于vider包下。持有特定的許可,可以在自己開(kāi)發(fā)的應(yīng)用程序中訪問(wèn)這些ContentProvider。技術(shù)知識(shí)知識(shí)點(diǎn)2:ContentProvier共享數(shù)據(jù)方式讓自己的數(shù)據(jù)和其他應(yīng)用程序共享有兩種方式:創(chuàng)建自己的ContentProvier(即繼承自ContentProvider的子類(lèi))或者是將自己的數(shù)據(jù)添加到已有的ContentProvider中去,后者需要保證現(xiàn)有的ContentProvider和自己的數(shù)據(jù)類(lèi)型相同且具有該ContentProvider的寫(xiě)入權(quán)限。對(duì)于ContentProvider,最重要的就是數(shù)據(jù)模型(datamodel)和URI。(1)數(shù)據(jù)模型
ContentProvider將其存儲(chǔ)的數(shù)據(jù)以數(shù)據(jù)表的形式提供給訪問(wèn)者,在數(shù)據(jù)表中每一行為一條記錄,每一列為具有特定類(lèi)型和意義的數(shù)據(jù)。每一條數(shù)據(jù)記錄都包括一個(gè)“_ID”數(shù)值字段,改字段唯一標(biāo)識(shí)一條數(shù)據(jù)。(2)URIURI,每一個(gè)ContentProvider都對(duì)外提供一個(gè)能夠唯一標(biāo)識(shí)自己數(shù)據(jù)集(dataset)的公開(kāi)URI,如果一個(gè)ContentProvider管理多個(gè)數(shù)據(jù)集,其將會(huì)為每個(gè)數(shù)據(jù)集分配一個(gè)獨(dú)立的URI。所有的ContentProvider的URI都以“content://”開(kāi)頭,其中“content://”是用來(lái)標(biāo)識(shí)數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版采砂廠承包環(huán)境治理合作合同標(biāo)準(zhǔn)文本
- 二零二五年度公共廣播系統(tǒng)安全監(jiān)測(cè)與預(yù)警合同
- 二零二五年攪拌站砂石料一站式采購(gòu)合同模板
- 2025版航空燃油灌裝作業(yè)安全協(xié)議合同
- 2025電子商務(wù)糾紛公證處理專項(xiàng)服務(wù)合同
- 二零二五年度太陽(yáng)能熱水器安裝服務(wù)協(xié)議范本
- 2025版互聯(lián)網(wǎng)接入合作協(xié)議范本
- 2025版智能廣告牌項(xiàng)目投資與運(yùn)營(yíng)管理合同
- 二零二五年度房地產(chǎn)項(xiàng)目投資并購(gòu)合同
- 2025版醫(yī)院后勤管理服務(wù)合同
- 甲乳外科護(hù)士進(jìn)修匯報(bào)
- 2025年幼兒園初級(jí)保育員測(cè)試題(含答案)
- 2025年攝影測(cè)量競(jìng)賽題庫(kù)及答案
- 安全注射培訓(xùn)課件
- 中國(guó)現(xiàn)代國(guó)防教學(xué)課件
- 基于SSM的在線辦公平臺(tái)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 航天器再入軌道的實(shí)時(shí)監(jiān)測(cè)與數(shù)據(jù)處理技術(shù)-洞察闡釋
- 2025屆江蘇省蘇州地區(qū)學(xué)校英語(yǔ)八年級(jí)第二學(xué)期期末聯(lián)考試題含答案
- 信息化項(xiàng)目監(jiān)理規(guī)劃
- TAOPA《固定式無(wú)人機(jī)反制設(shè)備技術(shù)規(guī)范》
- 新生兒院感管理
評(píng)論
0/150
提交評(píng)論