下面这段代码放在方法中直接调用就OK。Activity

 <span style="font-size:18px;">//ContactsContract.CALLER_IS_SYNCADAPTER-->表示将所有与联系人有关联的数据库都删除了
		ContentResolver cResolver1=this.getContentResolver();
		Uri uri4=ContactsContract.RawContacts.CONTENT_URI.buildUpon().appendQueryParameter(ContactsContract.CALLER_IS_SYNCADAPTER, "true").build();
		 cResolver1.delete(uri4, null, null); </span>


方法二:

<span style="white-space:pre">			</span>//删除通讯录
			public void deleteContacts(){
				 Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");  
			        ContentResolver cr = MainActivity.this.getContentResolver();
				Cursor contactsCur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
				while(contactsCur.moveToNext()){	
				  //获取ID
				  String rawId = contactsCur.getString(contactsCur.getColumnIndex(ContactsContract.Contacts._ID));
				  //删除
				  String where = ContactsContract.Data._ID  + " =?";
				  String[] whereparams = new String[]{rawId};
				  getContentResolver().delete(RawContacts.CONTENT_URI.buildUpon().appendQueryParameter(ContactsContract.CALLER_IS_SYNCADAPTER,"true").build(), where, whereparams);
				}
			}


posted on 2015-10-29 16:23  超宇  阅读(409)  评论(0)    收藏  举报