Fixed contact edition
This commit is contained in:
parent
9ff8d854ae
commit
8b5a52a8b1
3 changed files with 67 additions and 41 deletions
|
@ -148,7 +148,7 @@ public class ContactEditorFragment extends Fragment {
|
||||||
}
|
}
|
||||||
contact = LinphoneContact.createContact();
|
contact = LinphoneContact.createContact();
|
||||||
}
|
}
|
||||||
contact.setFirstNameAndLastName(firstName.getText().toString(), lastName.getText().toString());
|
contact.setFirstNameAndLastName(firstName.getText().toString(), lastName.getText().toString(), true);
|
||||||
if (photoToAdd != null) {
|
if (photoToAdd != null) {
|
||||||
contact.setPhoto(photoToAdd);
|
contact.setPhoto(photoToAdd);
|
||||||
}
|
}
|
||||||
|
@ -158,7 +158,7 @@ public class ContactEditorFragment extends Fragment {
|
||||||
}
|
}
|
||||||
contact.addOrUpdateNumberOrAddress(noa);
|
contact.addOrUpdateNumberOrAddress(noa);
|
||||||
}
|
}
|
||||||
contact.setOrganization(organization.getText().toString());
|
contact.setOrganization(organization.getText().toString(), true);
|
||||||
contact.save();
|
contact.save();
|
||||||
getFragmentManager().popBackStackImmediate();
|
getFragmentManager().popBackStackImmediate();
|
||||||
}
|
}
|
||||||
|
@ -282,7 +282,7 @@ public class ContactEditorFragment extends Fragment {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
numbersAndAddresses = new ArrayList<LinphoneNumberOrAddress>();
|
numbersAndAddresses = new ArrayList<>();
|
||||||
sipAddresses = initSipAddressFields(contact);
|
sipAddresses = initSipAddressFields(contact);
|
||||||
numbers = initNumbersFields(contact);
|
numbers = initNumbersFields(contact);
|
||||||
|
|
||||||
|
|
|
@ -466,9 +466,9 @@ public class ContactsManager extends ContentObserver implements FriendListListen
|
||||||
sipContacts.add(contact);
|
sipContacts.add(contact);
|
||||||
}
|
}
|
||||||
} else if (ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE.equals(mime)) {
|
} else if (ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE.equals(mime)) {
|
||||||
contact.setOrganization(data1);
|
contact.setOrganization(data1, false);
|
||||||
} else if (ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE.equals(mime)) {
|
} else if (ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE.equals(mime)) {
|
||||||
contact.setFirstNameAndLastName(data2, data3);
|
contact.setFirstNameAndLastName(data2, data3, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (created && !contacts.contains(contact)) {
|
if (created && !contacts.contains(contact)) {
|
||||||
|
|
|
@ -81,6 +81,14 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
return (this.compareTo(contact) == 0);
|
return (this.compareTo(contact) == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addChangesToCommit(ContentProviderOperation operation, boolean doItAfterAccountCreation) {
|
||||||
|
if (doItAfterAccountCreation) {
|
||||||
|
changesToCommit2.add(operation);
|
||||||
|
} else {
|
||||||
|
changesToCommit.add(operation);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void setFullName(String name) {
|
public void setFullName(String name) {
|
||||||
fullName = name;
|
fullName = name;
|
||||||
}
|
}
|
||||||
|
@ -89,28 +97,30 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
return fullName;
|
return fullName;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setFirstNameAndLastName(String fn, String ln) {
|
public void setFirstNameAndLastName(String fn, String ln, boolean commitChanges) {
|
||||||
if (fn != null && fn.length() == 0 && ln != null && ln.length() == 0) return;
|
if (fn != null && fn.length() == 0 && ln != null && ln.length() == 0) return;
|
||||||
|
if (fn != null && fn.equals(firstName) && ln != null && ln.equals(lastName)) return;
|
||||||
|
|
||||||
if (isAndroidContact()) {
|
if (isAndroidContact() && commitChanges) {
|
||||||
if (firstName != null || lastName != null) {
|
if (firstName != null || lastName != null) {
|
||||||
String select = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE + "'";
|
String select = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE + "'";
|
||||||
String[] args = new String[]{getAndroidId()};
|
String[] args = new String[]{getAndroidId()};
|
||||||
|
|
||||||
changesToCommit.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(select, args)
|
.withSelection(select, args)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, fn)
|
.withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, fn)
|
||||||
.withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, ln)
|
.withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, ln)
|
||||||
.build()
|
.build()
|
||||||
);
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, fn)
|
.withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, fn)
|
||||||
.withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, ln)
|
.withValue(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME, ln)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -137,31 +147,36 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
return organization;
|
return organization;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setOrganization(String org) {
|
public void setOrganization(String org, boolean commitChanges) {
|
||||||
if (isAndroidContact()) {
|
if (org != null && org.equals(organization)) return;
|
||||||
|
|
||||||
|
if (isAndroidContact() && commitChanges) {
|
||||||
if (androidRawId != null) {
|
if (androidRawId != null) {
|
||||||
String select = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE + "'";
|
String select = ContactsContract.Data.CONTACT_ID + "=? AND " + ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE + "'";
|
||||||
String[] args = new String[]{getAndroidId()};
|
String[] args = new String[]{getAndroidId()};
|
||||||
|
|
||||||
if (organization != null) {
|
if (organization != null) {
|
||||||
changesToCommit.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(select, args)
|
.withSelection(select, args)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Organization.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
.withValue(ContactsContract.CommonDataKinds.Organization.COMPANY, org)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -194,19 +209,21 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
if (photo != null) {
|
if (photo != null) {
|
||||||
if (isAndroidContact()) {
|
if (isAndroidContact()) {
|
||||||
if (androidRawId != null) {
|
if (androidRawId != null) {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, photo)
|
.withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, photo)
|
||||||
.withValue(ContactsContract.Data.IS_PRIMARY, 1)
|
.withValue(ContactsContract.Data.IS_PRIMARY, 1)
|
||||||
.withValue(ContactsContract.Data.IS_SUPER_PRIMARY, 1)
|
.withValue(ContactsContract.Data.IS_SUPER_PRIMARY, 1)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Photo.CONTENT_ITEM_TYPE)
|
||||||
.withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, photo)
|
.withValue(ContactsContract.CommonDataKinds.Photo.PHOTO, photo)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -247,9 +264,10 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
String select = ContactsContract.Data.RAW_CONTACT_ID + "=? AND " + ContactsContract.Data.DATA1 + "=?";
|
String select = ContactsContract.Data.RAW_CONTACT_ID + "=? AND " + ContactsContract.Data.DATA1 + "=?";
|
||||||
String[] args = new String[]{androidTagId, noa.getOldValue()};
|
String[] args = new String[]{androidTagId, noa.getOldValue()};
|
||||||
|
|
||||||
changesToCommit.add(ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(select, args)
|
.withSelection(select, args)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
String select;
|
String select;
|
||||||
if (noa.isSIPAddress()) {
|
if (noa.isSIPAddress()) {
|
||||||
|
@ -259,9 +277,10 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
}
|
}
|
||||||
String[] args = new String[]{getAndroidId(), noa.getOldValue()};
|
String[] args = new String[]{getAndroidId(), noa.getOldValue()};
|
||||||
|
|
||||||
changesToCommit.add(ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newDelete(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(select, args)
|
.withSelection(select, args)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -291,21 +310,23 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
if (noa.getOldValue() == null) {
|
if (noa.getOldValue() == null) {
|
||||||
if (noa.isSIPAddress() && LinphoneManager.getInstance().getContext().getResources().getBoolean(R.bool.use_linphone_tag)) {
|
if (noa.isSIPAddress() && LinphoneManager.getInstance().getContext().getResources().getBoolean(R.bool.use_linphone_tag)) {
|
||||||
if (androidTagId != null) {
|
if (androidTagId != null) {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidTagId)
|
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidTagId)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
||||||
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
||||||
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
||||||
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit2.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
||||||
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
||||||
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
||||||
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
||||||
.build());
|
.build()
|
||||||
|
, true);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
ContentValues values = new ContentValues();
|
ContentValues values = new ContentValues();
|
||||||
|
@ -321,34 +342,38 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
values.put(ContactsContract.CommonDataKinds.Phone.LABEL, ContactsManager.getInstance().getString(R.string.addressbook_label));
|
values.put(ContactsContract.CommonDataKinds.Phone.LABEL, ContactsManager.getInstance().getString(R.string.addressbook_label));
|
||||||
}
|
}
|
||||||
if (androidRawId != null) {
|
if (androidRawId != null) {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
.withValue(ContactsContract.Data.RAW_CONTACT_ID, androidRawId)
|
||||||
.withValues(values)
|
.withValues(values)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValues(values)
|
.withValues(values)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (noa.isSIPAddress() && LinphoneManager.getInstance().getContext().getResources().getBoolean(R.bool.use_linphone_tag)) {
|
if (noa.isSIPAddress() && LinphoneManager.getInstance().getContext().getResources().getBoolean(R.bool.use_linphone_tag)) {
|
||||||
if (androidTagId != null) {
|
if (androidTagId != null) {
|
||||||
changesToCommit.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(ContactsContract.Data.RAW_CONTACT_ID + "=? AND " + ContactsContract.Data.DATA1 + "=? ", new String[]{androidTagId, noa.getOldValue()})
|
.withSelection(ContactsContract.Data.RAW_CONTACT_ID + "=? AND " + ContactsContract.Data.DATA1 + "=? ", new String[]{androidTagId, noa.getOldValue()})
|
||||||
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
||||||
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
||||||
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
} else {
|
} else {
|
||||||
changesToCommit2.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
|
||||||
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
|
||||||
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
.withValue(ContactsContract.Data.MIMETYPE, ContactsManager.getInstance().getString(R.string.sync_mimetype))
|
||||||
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
.withValue(ContactsContract.Data.DATA1, noa.getValue())
|
||||||
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
.withValue(ContactsContract.Data.DATA2, ContactsManager.getInstance().getString(R.string.app_name))
|
||||||
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
.withValue(ContactsContract.Data.DATA3, noa.getValue())
|
||||||
.build());
|
.build()
|
||||||
|
, true);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
ContentValues values = new ContentValues();
|
ContentValues values = new ContentValues();
|
||||||
|
@ -364,10 +389,11 @@ public class LinphoneContact implements Serializable, Comparable<LinphoneContact
|
||||||
values.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
|
values.put(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
|
||||||
values.put(ContactsContract.CommonDataKinds.Phone.NUMBER, noa.getValue());
|
values.put(ContactsContract.CommonDataKinds.Phone.NUMBER, noa.getValue());
|
||||||
}
|
}
|
||||||
changesToCommit.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
addChangesToCommit(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
|
||||||
.withSelection(select, args)
|
.withSelection(select, args)
|
||||||
.withValues(values)
|
.withValues(values)
|
||||||
.build());
|
.build()
|
||||||
|
, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue