getContentResolver()。删除不起作用

时间:2014-06-09 14:42:30

标签: android uri contacts android-contentresolver

我试图删除特定的联系人!我搜索了很多,但我尝试的每个代码都没有用!

public void delete(String name,String numero)
{
Cursor cur = getContentResolver().query(Contacts.CONTENT_URI,null, null, null, null);

while (cur.moveToNext())
{
    try
    {
        String[] selectionArgs=new String[]{String.valueOf(numero)};
        String lookupKey = cur.getString(cur.getColumnIndex(Contacts.LOOKUP_KEY));
        Uri uri = Uri.withAppendedPath(Contacts.CONTENT_LOOKUP_URI, lookupKey);
        getContentResolver().delete(uri, Phone.NUMBER +"=?", selectionArgs);
    }
    catch(Exception e)
    {
       System.out.println(e.getStackTrace());
    }
}

}

我也试过这个而不是指定selectionArgs而不是

getContentResolver().delete(uri, Contacts.DISPLAY_NAME +"="+ name, null);

并尝试使用Contacts.更改ContactsContract.Contacts.,但没有 然后尝试使用Contact displayname而不是number来删除。 似乎选择不起作用! uri值是Uri$HierarchicalUri这是对的吗?

问题是什么?

1 个答案:

答案 0 :(得分:1)

更改

getContentResolver().delete(uri, Contacts.DISPLAY_NAME +"="+ name, null);

String[] names = {name};
getContentResolver().delete(uri, Contacts.DISPLAY_NAME +"=?", names);