8 四大元件之三 ContentProvider

2022-03-25 19:14:35 字數 1771 閱讀 4752

課程目標:

理解contentprovider的作用及好處

認清contentprovider與資料儲存的關係 

掌握contentprovider對外提供的資料模型形式

能夠編寫contentresolver的增刪改查

能夠自定義乙個contentprovider ,能夠提供程序間訪問

了解contentprovider 內部機制

重點難點:

contentprovider與資料操作的關係

contentprovider內部機制

考核目標:

說說contentprovider與android資料儲存的關係?

contentprovider物件何時被例項化?

contentprovider資料模型畫出來

contentprovider的機制是什麼?

一、為什麼要有contentprovider?

1)我們之前的儲存都是放在具體應用程式下面(具體的私有路徑,限制訪問許可權),如何能夠共享呢?

2)系統由於安全的因素,提供的一些資料訪問,不能直接開放給開發者,如何讓開發者能夠訪問到這些資料呢?

3)如果我寫好的資料庫程式,希望封裝並且提供一套公共標準,讓外部呼叫而不直接操作我的資料庫,如何做呢?

二、特性

唯一的共享程式間資料方式。

android沒有提供公共資料區讓不同的程式去共享訪問。

三、contentprovider是什麼?

1)contentprovider是一套儲存訪問資料的通道,讓你無需了解下面的儲存細節實現資料操作及共享。

2)無論具體儲存是如何的,存在哪兒的,但對外提供的模型是統一的。

contentprovider 實際上是個管道,把錶提供出來。

3)定義了contentprovider物件,會在系統初始化的時候自動例項化,無需我們手動去例項化物件。

4)我們只需要通過contentresolver去取的和運算元據即可。

四、contentresolver與contentprovider配對

五、uri

六、系統提供的contentprovider

browser :瀏覽器的書籤 ,歷史記錄等。

calllog :呼叫記錄。包括呼入呼。

mediastore :**儲存。

settings :系統設定資訊的部分內容。

userdictionary :使用者詞典內容。

七、增刪改查

八、查詢系統通訊錄

九、建立自己的contentprovider

十、猜猜contentprovider機制是什麼樣的 ?

十一、faq:contentprovider呼叫的時候宿主程序生命週期

接受呼叫的時候啟動宿主程序 , 操作完畢後,宿主程序為empty

四大元件(四) content provider

content provider相當於是程式與程式之間的介面。讓原本不可能通訊的程式,通過內容提供者這個橋梁變得可以通訊。定義乙個類 繼承 contentprovider public class backdoor extends contentprovider 註冊contentprovider ...

android 四大元件

1.activity 2.service 3.contentprovider 應用中的資料,對外進行共享,其它應用可以通過內容提供者,可以訪問到你應用中的資料,對資料進行增刪改查 1 對不同的資料格式,統一了檔案格式和資料訪問api 2 內容提供者要繼承contentprovider類 3 在清單檔...

Android 四大元件

activity intent receiver service content provider 並不是每乙個android應用程式都需要這四種構造塊,這不是必須的。當我們明確了我們的應用需要哪些構造塊後,我們就需要在androidmanifest.xml中登記這些構造塊的清單。這個配置檔案用於定...