You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android中使用BatchOperations删除联系人特定号码失败的问题求助

无法通过BatchOperations删除联系人特定号码的问题

我正在开发一款具备访问所有联系人、更新/删除任意联系人号码功能的应用,目前卡在了删除某一联系人中的特定号码这个环节上。

我尝试使用batchOperations来执行删除操作,相关代码如下:

String phone = ContactsContract.Data.RAW_CONTACT_ID + " = ? AND " + 
               ContactsContract.Data.MIMETYPE + " = ? AND " + 
               ContactsContract.CommonDataKinds.Phone._ID + " = ?"; 
String[] phoneArgs = new String[]{
    Integer.toString(rawContactId), 
    ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE, 
    String.valueOf(id)
}; 
batchOperations.add(ContentProviderOperation.newDelete(Data.CONTENT_URI)
                  .withSelection(phone, phoneArgs)
                  .build()); 
this.mContext.getContentResolver().applyBatch("com.android.contacts", batchOperations); 
batchOperations.clear();

通过调试器查看,某次测试删除操作的参数值为:raw_contact_id = 4093,id = 21579,这些参数对应某一测试联系人中的特定号码"+814444444444",但执行代码后该号码依然没有被成功删除。我已经花费了数小时排查问题,但始终没能找到原因,恳请各位大佬帮忙分析解决。

内容的提问来源于stack exchange,提问作者Light Yagami

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 11:38:22