我正在尝试使用此代码更新联系电子邮件地址
String selectEmail = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "='" +
ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE + "'";
String[] emailArgs = new String[]{Id};
ops.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
.withSelection(selectEmail, emailArgs)
.withValue(ContactsContract.CommonDataKinds.Email.DATA, email)
.build());
我正在使用此代码获取“Id”
String[] returnVals = new String[] {ContactsContract.CommonDataKinds.Phone.CONTACT_ID};
this.cur = this.cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
returnVals,
ContactsContract.CommonDataKinds.Phone.NUMBER + " = \"" + phoneNumber + "\"",
null,
null);
我的问题是
- 我是否使用正确的方法来使用电话号码获取 Contact_ID
- 联系人没有正确更新,它正在更改电子邮件、姓名和号码等所有字段。难道我做错了什么?
需要帮忙。