Android получает телефонные контакты и удаляет дубликаты

У меня проблема с контактами. Я получил телефонные контакты и сохранил их в своем объекте списка. Вот код для этого

  Uri uri = ContactsContract.Data.CONTENT_URI;

    String[] projection = {
            ContactsContract.Data.CONTACT_ID,
            ContactsContract.Data.DISPLAY_NAME,
            ContactsContract.Data.PHOTO_ID,
            ContactsContract.Data.DATA1
    };

    Cursor phones = getContentResolver().query(
            uri, projection, ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE + "' AND " + ContactsContract.Data.DATA1 + "!=''", null, null);


    if (phones.moveToFirst()) {

        do {
            long ID =   phones.getLong(phones.getColumnIndex(projection[0]));
            String DisplayName  =   phones.getString(phones.getColumnIndex(projection[1]));
            String photoID =    phones.getString(phones.getColumnIndex(projection[2]));
            String Key =    phones.getString(phones.getColumnIndex(projection[3]));
            String photoURI = "null";

            if(Key != null && Key.toString().trim().length() > 0 && (Key.startsWith("0") || Key.startsWith("+"))){
                if (photoID != null) {
                    photoURI=String.valueOf(ID);;
                    //Console.WriteLine("*************************************> id="+ID+" uri="+photoURI.ToString());
                }
                ContactBean contactModel=new ContactBean(DisplayName,Key,photoID);

            list.add(contactModel);
            } else {
                // No number!!
            }
        } while (phones.moveToNext());
    }

Я получаю все контакты и контакты электронной почты удаляются в соответствии с моими требованиями. Моя проблема в том, что я получаю все контакты, включая дубликаты. Если у меня есть контакт, сохраненный 3 раза с тем же именем и номером, он получает все три контакта. Я не хочу это. Есть ли способ избежать этого. Что-нибудь в запросе getContactResolver или я должен удалить дубликаты для моего списка. Любые решения или предложения?

Ответы на вопрос(4)

Ваш ответ на вопрос