Leyendo todos los datos de contacto

Estoy en Android 2.3.3, API Nivel 10. Quiero leer todos los contactos y datos asociados a ellos, por lo tanto, por ejemplo. Todas las direcciones de correo electrónico, números de teléfono, campos personalizados ... Lo intenté así:

Uri contactUri = ContactsContract.Contacts.CONTENT_URI;
Cursor contacts = managedQuery(contactUri, null, null, null, null );

contacts.moveToFirst();

do {
    for(int i=0;i<contacts.getColumnCount();i++)
    {
         System.out.println(contacts.getColumnName(i) + ": " + contacts.getString(i));
    }

    System.out.println("============\n\n");

} while (contacts.moveToNext());

contacts.close();

Sin embargo esto me da solo los siguientes campos:

times_contacted: 0
contact_status: null
custom_ringtone: null
has_phone_number: 1
phonetic_name: null
phonetic_name_style: 0
contact_status_label: null
lookup: [removed]
contact_status_icon: null
last_time_contacted: 0
display_name: [removed]
sort_key_alt: [removed]
in_visible_group: 1
_id: 101
starred: 0
sort_key: [removed]
display_name_alt: [removed]
contact_presence: null
display_name_source: 40
contact_status_res_package: null
contact_chat_capability: null
contact_status_ts: null
photo_id: null
send_to_voicemail: 0

¿Dónde están los números de teléfono, direcciones de correo electrónico ...? Gracias por cualquier sugerencia!

Respuestas a la pregunta(1)

Su respuesta a la pregunta