ContentProvider學習

       當一個應用程序須要把本身的數據暴露給其餘程序使用時,該就用程序就可經過提供ContentProvider來實現;其餘應用程序就可經過ContentResolver來操做ContentProvider暴露的數據。android

       一旦某個應用程序經過ContentProvider暴露了本身的數據操做接口,那麼無論該應用程序是否啓動,其餘應用程序均可以經過該接口來操做該應用程序的內部數據,包括增長數據、刪除數據、修改數據、查詢數據等。ide

       ContentProvider以某種Uri的形式對外提供數據,容許其餘應用訪問或修改數據;其餘應用程序使用ContentResolver根據Uri去訪問操做指定數據。xml

步驟:
一、定義本身的ContentProvider類,該類須要繼承Android提供的ContentProvider基類。
二、在AndroidManifest.xml文件中註冊個ContentProvider,註冊ContenProvider時須要爲它綁定一個URL。
     例:
     <provider android:name="自定義名字(例:.MyProvider)"
            android:authorities="com.myit.providers.MyProvider" />
     說明:authorities就至關於爲該ContentProvider指定URL。對象

     註冊後,其餘應用程序就能夠經過該Uri來訪問MyProvider所暴露的數據了。   
     接下來,使用ContentResolver操做數據,Context提供了以下方法來獲取ContentResolver對象。
     通常來講,ContentProvider是單例模式,當多個應用程序經過ContentResolver來操做ContentProvider提供的數據時,ContentResolver調用的數據操做將會委託給同一個ContentProvider處理。
     使用ContentResolver操做數據只需兩步:
     一、調用Activity的ContentResolver獲取ContentResolver對象。
     二、根據須要調用ContentResolver的insert()、delete()、update()和query()方法操做數據便可。     
        繼承

相關文章
相關標籤/搜索