課程目標:
理解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中登記這些構造塊的清單。這個配置檔案用於定...