2

我正在尝试以下代码:

private class NativeContentObserver extends ContentObserver  {
      public NativeContentObserver() {
         super(null);
      }

      @Override
      public void onChange(boolean selfChange, Uri uri) {
         super.onChange(selfChange, uri);
         Log.i(TAG, "uri is "+uri);
}

{
NativeContentObserver contentObserver = new NativeContentObserver();
mContext.getContentResolver().registerContentObserver(
           ContactsContract.Contacts.CONTENT_URI, true, contentObserver);
}

当我运行此代码并编辑联系人时,我看到

uri 是 content://com.android.contacts

为什么我没有在 URI 中获得个人联系人的 ID?如果我尝试 SMS 观察者,我会得到包含 ID 的正确 URI。我在这里缺少什么吗?这是在三星 S3 手机上。

4

1 回答 1

0

很可能是因为提供者更新方法调用 notifyChange(uri) 具有完整的 URI,而不是过滤一个。如果是这种情况,则意味着 ContactsContract.Contacts 已被弃用。寻找替代品

于 2013-03-25T09:44:38.893 回答