public static Contact getContact(Context context, Long contactId) { String number = getContactNumberByContactId(context, String.valueOf(contactId)); return getContact(context, String.valueOf(contactId), number); }
public static Contact getContactByEmailId(Context context, String emailId) { Contact contact = new Contact(); String contactNumber = emailId; String contactId = null; String displayName = ""; Cursor cursor = context.getContentResolver().query(ContactsContract.Data.CONTENT_URI, new String[]{ContactsContract.CommonDataKinds.Email.CONTACT_ID, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, ContactsContract.CommonDataKinds.Phone.NUMBER}, ContactsContract.CommonDataKinds.Email.DATA + "=?", new String[]{emailId}, null); try { while (cursor.moveToNext()) { contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Email.CONTACT_ID)); contactNumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); displayName = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)); } } finally { if (cursor != null) { cursor.close(); } } if (contactId != null) { contactNumber = getContactNumberByContactId(context, contactId); contact.setContactId(Long.parseLong(contactId)); } contact.processFullName(displayName); contact.setContactNumber(contactNumber); return contact; }