背景
有個業(yè)務(wù)場景需要實時知道ContentProvider中的數(shù)據(jù)變化掠抬。
實現(xiàn)方案
1骄崩、在自定義的ContentProvider中,當數(shù)據(jù)變化時葛峻,指定通知調(diào)用锹雏。
override fun update(
uri: Uri, values: ContentValues?, selection: String?,
selectionArgs: Array<String>?
): Int {
val result = dbHelper.update("user_table", values!!, null, null)
context?.contentResolver?.notifyChange(uri, null);
return result
}
2、接收方注冊監(jiān)聽术奖。
val uri: Uri = Uri.parse("content://cn.cxy.contentproviderdemo.provider/user")
contentResolver.registerContentObserver(uri, false, object : ContentObserver(Handler()) {
override fun onChange(selfChange: Boolean) {
queryUser()
}
})
完整源代碼
https://gitee.com/hspbc/content-provider-change
關(guān)于我
廈門大學計算機專業(yè) | 前華為工程師
專注《零基礎(chǔ)學編程系列》礁遵,包含:Java | 安卓 | 前端 | Flutter | 小程序 | 鴻蒙
全網(wǎng)可關(guān)注:藍不藍編程