2017-04-12 45 views
0

在我的申請,我需要刪除從手機地址簿中的聯繫人的具體數量,但到目前爲止,我剛剛得到使用此代碼刪除整個聯繫人:如何從android中有多個數字的聯繫人中刪除一個號碼?

Uri url = RawContacts.CONTENT_URI; 
    String where = Contacts.DISPLAY_NAME + " = '" + name + "'"; 
    String[] selectionArgs = null; 
    return context.getContentResolver().delete(url, where, selectionArgs); 

我也試圖刪除數字使用MIMETYPE,但沒有得到任何成功。

所以請在這幫助我。

在此先感謝。

+0

我從你的問題得到的是有一個聯繫人,它有多個聯繫號碼。並且您想要刪除多個聯繫人號碼中的一個特定號碼。所以基本上它是一個更新查詢你。不要刪除,只需將數字更新爲空字符串。這應該工作我猜 –

+0

@HardikTrivedi如何做到這一點,你可以請任何方式或任何教程建議我? 在此先感謝。 –

+0

檢查這篇文章,它會幫助你理解使用內容提供者的更新查詢。 –

回答

0

電話號碼存儲在Data表,你需要刪除基於接觸-ID和電話號碼本身:

Uri url = Data.CONTENT_URI; 
String where = Data.CONTACT_ID + " = '" + theContactId + "' AND " + Data.MIMETYPE + " = '" + CommonDataKinds.Phone.CONTENT_ITEM_TYPE + "' AND " + CommonDataKinds.Phone.NUMBER + " = '" + thePhoneNumber "'"; 
return context.getContentResolver().delete(url, where, null); 

注意theContactId是你接觸的接觸ID試圖修改,而thePhoneNumber確切的字符串的電話號碼,你從通訊錄數據庫中得到它。

詳細瞭解數據如何存儲在數據表herehere中。

相關問題