You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2012/02/04 04:37:43 UTC
[3/3] git commit: CB-75 contact.remove does not remove the contact
fully
CB-75 contact.remove does not remove the contact fully
Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/commit/e0fea2c3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/tree/e0fea2c3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/diff/e0fea2c3
Branch: refs/heads/master
Commit: e0fea2c3526115cfe189de59f6e2b00e94b3d6f5
Parents: fa4d6d3
Author: Anis Kadri <an...@gmail.com>
Authored: Fri Feb 3 19:32:31 2012 -0800
Committer: Anis Kadri <an...@gmail.com>
Committed: Fri Feb 3 19:32:31 2012 -0800
----------------------------------------------------------------------
.../src/com/phonegap/ContactAccessorSdk5.java | 17 ++++++++++++--
1 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/e0fea2c3/framework/src/com/phonegap/ContactAccessorSdk5.java
----------------------------------------------------------------------
diff --git a/framework/src/com/phonegap/ContactAccessorSdk5.java b/framework/src/com/phonegap/ContactAccessorSdk5.java
index 09bd91a..f6bb32a 100644
--- a/framework/src/com/phonegap/ContactAccessorSdk5.java
+++ b/framework/src/com/phonegap/ContactAccessorSdk5.java
@@ -1617,9 +1617,20 @@ public class ContactAccessorSdk5 extends ContactAccessor {
* @param id the unique ID of the contact to remove
*/
public boolean remove(String id) {
- int result = mApp.getContentResolver().delete(ContactsContract.Data.CONTENT_URI,
- ContactsContract.Data.CONTACT_ID + " = ?",
- new String[] {id});
+ int result = 0;
+ Cursor cursor = mApp.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,
+ null,
+ ContactsContract.Contacts._ID + " = ?",
+ new String[] {id}, null);
+ if(cursor.getCount() == 1) {
+ cursor.moveToFirst();
+ String lookupKey = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));
+ Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookupKey);
+ result = mApp.getContentResolver().delete(uri, null, null);
+ } else {
+ Log.d(LOG_TAG, "Could not find contact with ID");
+ }
+
return (result > 0) ? true : false;
}