一、功能
創(chuàng)新互聯(lián)是專業(yè)的祁門網(wǎng)站建設(shè)公司,祁門接單;提供網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行祁門網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
應(yīng)用之間共享數(shù)據(jù)
常見使用場(chǎng)景:通訊錄?短信等
二、使用步驟
1.提供數(shù)據(jù)App -?定義ContentProvider
繼承ContentProvider?復(fù)寫相關(guān)初始化和查詢方法,同時(shí)在Manifest中聲明
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機(jī)制 假設(shè)A應(yīng)用訪問B應(yīng)用數(shù)據(jù) 1.A發(fā)送消息給AMS,想要訪問B中的CP。 2.AMS檢查發(fā)現(xiàn),B中的CP沒啟動(dòng)過,為此新開一個(gè)進(jìn)程,啟動(dòng)B,然后獲取到B啟動(dòng)的CP,把CP的代理對(duì)象返回給A。 3.A拿到CP的代理對(duì)象,也就是IContentProvider,就調(diào)用它的增刪改查4個(gè)方法了,接下來就是使用ASM來傳輸數(shù)據(jù)或者修改數(shù)據(jù)了 參考:https://www.jianshu.com/p/c2ac0a54cdaa 四、擴(kuò)展 Binder機(jī)制 https://www.jianshu.com/p/47731149c93c AIDI使用 https://www.jianshu.com/p/29999c1a93cd https://www.jianshu.com/p/23612b2cce30
分享文章:四大組件(4)-ContentProvider
標(biāo)題URL:http://weahome.cn/article/ghcpjc.html