我目前正在编写一个应用程序,它正在观察内容:// sms URI,用于对数据库进行的任何更改。添加或删除单个消息时会成功触发我的观察者,但是,一旦删除整个线程,就不会触发通知。有没有办法让这个事件触发?或许我应该观察另一个内容提供商?
Uri URI = Uri.parse("content://sms");
String[] columns = {"_id", "date"};
Cursor c = getContentResolver().query(URI, columns, "type=?", new String[]{"1"}, "_id DESC");
Observer observer = new Observer();
c.registerContentObserver(observer);
我的观察员班:
private class Observer extends ContentObserver {
public Observer() {
super(null);
}
@Override
public void onChange(boolean selfChange) {
super.onChange(selfChange);
if (!selfChange) {
// do stuff
// never called when a thread is deleted
}
}
}
答案 0 :(得分:4)
我转而观察内容:// mms-sms / conversation内容提供商。删除线程时,此提供程序会正确地通知我的观察者。