一、功能
創(chuàng)新互聯(lián)是專業(yè)的祁門網(wǎng)站建設(shè)公司,祁門接單;提供網(wǎng)站設(shè)計制作、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行祁門網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
應(yīng)用之間共享數(shù)據(jù)
常見使用場景:通訊錄?短信等
二、使用步驟
1.提供數(shù)據(jù)App -?定義ContentProvider
繼承ContentProvider?復(fù)寫相關(guān)初始化和查詢方法,同時在Manifest中聲明
<provider?
android:name=“xxx”
android:authorities=“testProvider”?//訪問路徑名稱
android:enabled=”true“
android:exported=“true”/>
2.獲取數(shù)據(jù)app?使用ContentResolver獲取數(shù)據(jù)
Uri uri = Uri.parse(“content://xxx”);
ContentResolver contentResolver = getContentResolver();
Curor cursor = contentResolver.query(uri,null,”query_where”,null,null);
三、原理
匿名共享內(nèi)存(ASM)?- binder機制
假設(shè)A應(yīng)用訪問B應(yīng)用數(shù)據(jù)
1.A發(fā)送消息給AMS,想要訪問B中的CP。
2.AMS檢查發(fā)現(xiàn),B中的CP沒啟動過,為此新開一個進程,啟動B,然后獲取到B啟動的CP,把CP的代理對象返回給A。
3.A拿到CP的代理對象,也就是IContentProvider,就調(diào)用它的增刪改查4個方法了,接下來就是使用ASM來傳輸數(shù)據(jù)或者修改數(shù)據(jù)了
參考:https://www.jianshu.com/p/c2ac0a54cdaa
四、擴展
Binder機制
https://www.jianshu.com/p/47731149c93c
AIDI使用
https://www.jianshu.com/p/29999c1a93cd
https://www.jianshu.com/p/23612b2cce30
本文名稱:四大組件(4)-ContentProvider
文章源于:http://muchs.cn/article22/ghcpjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、電子商務(wù)、服務(wù)器托管、Google、微信公眾號、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)