Android getContentResolver().delete不';行不通

Android getContentResolver().delete不';行不通,android,uri,contacts,android-contentresolver,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 Str

我正在尝试删除特定联系人!我搜索了很多,但我尝试的每一个代码都不起作用

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());
    }
}
}

我也尝试过这样做,而不是指定SelectionAgs,但什么都没有

getContentResolver().delete(uri, Contacts.DISPLAY_NAME +"="+ name, null);
并尝试更改
联系人。
联系人合同。联系人。
但没有更改 但尝试用联系人显示名而不是号码删除。 看来选择不起作用!uri值为
uri$hierarchycaluri
是否正确

有什么问题吗?

改变

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


您设置了正确的权限吗?是的,但是现在所有联系人都将被删除,而我只想删除具有该号码的联系人。我遇到了类似的问题,但没有删除联系人。。。尝试用引号设置值,例如,
+“=”“+name””
(单引号)仍然不起作用!我尝试使用Phone.NUMBER代替显示名称,但不起作用!它将继续删除所有联系人
String[] names = {name};
getContentResolver().delete(uri, Contacts.DISPLAY_NAME +"=?", names);