97干视频,99国产精品懂色,亚洲精品99久久久久中文字幕,伊人五月丁香综合AⅤ,国产精品成人免费999

  您的位置:華清遠見教育科技集團 >> 新聞動態(tài) >> Android資料 >> Android Content Providers  
 
Android Content Providers
分享到:

不同于之前講到的Android應用組件,如與用戶直接交互UI組件Activity;運行在后臺、用戶不可見的服務組件Service以及進行系統(tǒng)消息廣播的廣播組件Broadcast Receivers。內(nèi)容提供器(Content Providers)是Android提供的一個在不同應用間傳遞、分享數(shù)據(jù)的機制,這些數(shù)據(jù)可以存儲在文件系統(tǒng)、SQLite數(shù)據(jù)庫等中。

當要使用content provider訪問數(shù)據(jù)時,我們需要在應用程序的Context中使用ContentResolver對象作為客戶端,同provider進行通信。與provier對象通信的ContentResolver對象是ContentProvider類的一個實例。provider對象接收從客戶端發(fā)來的數(shù)據(jù),執(zhí)行請求的動作并返回結(jié)果。

1)定義AppWidgetProviderInfo對象

如果你不打算同其他應用程序共享數(shù)據(jù),就沒必要實現(xiàn)provider。但是,如果希望在自己的應用程序中搜索建議的功能,就需要實現(xiàn)自己的provider。同樣的,如果希望在自己的應用程序和其他的應用程序間拷貝粘貼復雜的數(shù)據(jù)或文件,也需要實現(xiàn)自己的provider。

自定義的內(nèi)容提供器必須擴展自android.content.ContentProvider基類。

如果期望應用將擁有的數(shù)據(jù)變?yōu)楣矓?shù)據(jù),開發(fā)者可以通過自定義應用自己的內(nèi)容提供器,或者將數(shù)據(jù)添加到已有的內(nèi)容提供器中的方式來進行。下面是一個內(nèi)容提供器的定義:

< provider
        android:name=".provider.EmailProvider"
        android:authorities="com.android.email.provider"
        android:multiprocess="true"
        android:permission="com.android.email.permission.ACCESS_PROVIDER"
    />

Android系統(tǒng)本身也通過content providers來管理數(shù)據(jù),如音頻,視頻,圖像,個人聯(lián)系信息等。我們可以在android.provider包的參考文檔中看到這些providers列表。在一定條件下,這些providers能夠訪問任何Android應用程序。

 更多相關文章

·Android App Widgets開發(fā)
·Android Intent激活組件
·Android Broadcast的使用
·詳解Android Service組件
·Android應用組件Activity