to get email address from the addressbook in android
courtesy to http://www.anddev.org/viewtopic.php?p=19672
first add uses_permissions for reading contacts in the manifest file. then add this code inside any function(i.e onCreate() of activity)
Uri mContacts = Contacts.ContactMethods.CONTENT_URI;
String[] projection = new String[] {
Contacts.ContactMethods.PERSON_ID,
Contacts.ContactMethods.DISPLAY_NAME,
Contacts.ContactMethods.KIND,
Contacts.ContactMethods.DATA };
Cursor c = this.managedQuery(mContacts, projection, null, null,
Contacts.ContactMethods.DISPLAY_NAME + " ASC");
c.moveToFirst();
int previousId = -1;
do {
int personId = c.getInt(c
.getColumnIndex(Contacts.ContactMethods.PERSON_ID));
if (personId != previousId) {
String personName = c.getString(c
.getColumnIndex(Contacts.ContactMethods.DISPLAY_NAME));
Log.i("name",personName);
}
int dataKind = c.getInt(c
.getColumnIndex(Contacts.ContactMethods.KIND));
if (dataKind == 1) {
String personEmail = c.getString(c
.getColumnIndex(Contacts.ContactMethods.DATA));
Log.i("email",personEmail);
}
previousId = personId;
} while (c.moveToNext());
// it's output is shown in the log file
Comments
Post a Comment