我正在尝试使用此代码更新联系电子邮件地址
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);
我的问题是
1)我是否使用正确的方式使用电话号码获取Contact_ID? 2)联系人没有正确更新,它正在改变所有字段,如电子邮件,姓名和号码。我做错了什么?
需要帮助