日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

Android内容观察者

發(fā)布時(shí)間:2025/7/14 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android内容观察者 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

內(nèi)容觀察者是做什么的?

內(nèi)容觀察者主要用來(lái)觀察數(shù)據(jù)庫(kù)是否被操作了。

以查詢數(shù)據(jù)庫(kù)為例:

?

首先注冊(cè)一個(gè)內(nèi)容觀察者(App1):

1 //false 觀察的Uri必須是一個(gè)確切的Uri 如果是true,只需要匹配一個(gè)主機(jī)名,后面所有的操作都生效 2 getContentResolver().registerContentObserver(uri,true,new MyContentObserver(new Handler())); 3 4 5 private class MyContentObserver extends ContentObserver{ 6 7 /** 8 * Creates a content observer. 9 * 10 * @param handler The handler to run {@link #onChange} on, or null if none. 11 */ 12 public MyContentObserver(Handler handler) { 13 super(handler); 14 } 15 16 //當(dāng)觀察的Uri發(fā)生改變的時(shí)候執(zhí)行 17 @Override 18 public void onChange(boolean selfChange) { 19 System.out.println("數(shù)據(jù)庫(kù)被操作了!!!!!"); 20 super.onChange(selfChange); 21 } 22 }

?

onChange()方法:當(dāng)觀察的Uri的數(shù)據(jù)庫(kù)被操作的時(shí)候,會(huì)執(zhí)行onChange()方法。

?

App2操作數(shù)據(jù)庫(kù):

1 private void doQuery(){ 2 Uri uri = Uri.parse("content://com.coderwei.provider/query"); 3 Cursor cursor = getContentResolver().query(uri,new String[]{"name","money"},null,null,null); 4 5 6 if (cursor!=null){ 7 //如果操作了數(shù)據(jù)庫(kù),就發(fā)出一個(gè)通知 8 this.getContentResolver().notifyChange(uri,null); 9 while (cursor.moveToNext()){ 10 String name = cursor.getString(0); 11 String money = cursor.getString(1); 12 System.out.println("name:"+name+" money: "+money); 13 } 14 } 15 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/Godfunc/p/6065547.html

總結(jié)

以上是生活随笔為你收集整理的Android内容观察者的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。