Android開發抖音短視頻系統源碼ContentProvider進程間如何共享數據?

隨着互聯網的迅速發展,Android技術也是發生很大的變化,要求也是越來高了,以前只要會基本的Android組件,會listview,分享就感覺很牛了,智能手機的發展,及用戶普通追求高效率,用戶體驗的提升,要求開發人員必須會懂實現原理及優化APP程序;目前在工作中要了解原理性的問題,handler實現原理,activity啓動原理,進程通信原理,多線程等等,那麼,Android開發抖音短視頻系統源碼ContentProvider進程間如何共享數據?數據存在哪裏?

1、ContentProvider提供了一種多應用間數據共享的方式。ContentProvider是個實現了一組用於提供其他應用程序存取數據的標準方法的類。應用程序可以在ContentProvider中執行如下操作:查詢數據、修改數據、添加數據、刪除數據。

2、一個程序可以通過實現一個ContentProvider的抽象接口將自己的數據完全暴露出去,而且ContentProvider是以類似數據庫中表的方式將數據暴露的。那麼外界獲取其提供的數據,也就應該與從數據庫中獲取數據的操作基本一樣,只不過是採用URL來表示外界需要訪問的“數據庫”。

3、在ContentProvider中使用的查詢字符串有別於標準的SQL查詢,很多諸如select、add、delete、modify等操作都使用一種特殊的URL進行,這種URL由3部分組成,“content://”,代表數據的路徑和一個可選的表示數據的ID。content://media/internal/images 這個URL將返回設備上存儲的所有圖片content://contacts/people/ 這個URL將返回設備上的所有聯繫人信息content://contacts/people/9 這個URL返回單個結果(聯繫人信息中ID爲9的聯繫人記錄)。

4、標準的ContentProvider:Android提供了一些已經在系統中實現的標準,比如聯繫人信息,圖片庫等等,可以用這些ContentProvider來訪問設備上存儲的聯繫人信息、圖片等等。

5、如果想要存儲字節型數據,比如位圖文件等,那保存該數據的數據列其實是一個表示實際保存保存文件的URL字符串,客戶端通過它來讀取對應的文件數據,處理這種數據類型的ContentProvider需要實現一個名爲_data的字段,_data字段列出了該文件在Android文件系統上的精確路徑。這個字段不僅是供客戶端使用,而且也可以供ContentResolver使用。客戶端可以調用ContentResolver.openOutputStream()方法來處理該URL指向的文件資源,如果是ContentResolver本身的話,由於其持有的權限比客戶端要高,所以它能直接訪問該數據文件。ContentProvider使用Android文件系統或者SQLite數據庫來保持數據,但是也可以以任何方式來存儲。

以上,就是Android開發抖音短視頻系統源碼ContentProvider進程間共享數據簡單介紹,以及多應用間數據共享的方式介紹,存儲讀取字節型數據調度介紹,關注本博主,會有更多關於短視頻系統源碼,直播系統源碼,一對一視頻交友系統源碼功能模塊介紹。

聲明:本篇爲原創文章,轉載請註明出處及作者。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章