我正在嘗試獲取使用聯繫人的電子郵件ID。爲此我使用光標加載器。有一個問題我也收到重複的電子郵件ID。如何刪除電子郵件的重複。我應該使用原始查詢「SELECT DISTINCT」而不是使用CursorLoader還是有其他解決方案?使用CursorLoader獲取電子郵件導致電子郵件重複
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
String[] projection = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.CommonDataKinds.Email.DATA};
String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC";
String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP +"='1' AND " + Email.DATA +" IS NOT NULL AND " + Email.DATA +" != \"\" " ;
//showing only visible contacts
String[] selectionArgs = null;
return new CursorLoader(this, ContactsContract.CommonDataKinds.Email.CONTENT_URI, projection, selection, selectionArgs, sortOrder);
}
謝謝mars,我曾經使用過這種方法。正在尋找其他解決方案,我不需要使用內存。 –
我做了類似的事情,但使用Cursor而不是List。 – zeeshan