Mon application Android doit récupérer des informations sur un contact (à savoir, numéro de téléphone et nom.) J'ai écrit du code en utilisant getContentResolver().query()
Dans les résultats, je vois que le nom est étant retourné, et d'autres informations comme quand j'ai contacté cette personne pour la dernière fois, mais pas le numéro de téléphone. Qu'est-ce que je fais mal?Impossible d'obtenir un numéro de téléphone dans mon application Android
Le code:
Log.w("MyApp", "requesting " + phonesUri.toString());
Cursor contactCursor = context.getContentResolver().query(person, null, null, null, null);
contactCursor.moveToFirst();
for (int i = 0; i < contactCursor.getColumnCount(); i ++) {
Log.w("MyApp", contactCursor.getColumnName(i) + ": " + contactCursor.getString(i));
}
qui sort ceci:
W/MyApp (21477): requesting content://contacts/people/169/phones
W/MyApp (21477): times_contacted: 6
W/MyApp (21477): custom_ringtone: null
W/MyApp (21477): primary_organization: null
W/MyApp (21477): phonetic_name:
W/MyApp (21477): status: null
W/MyApp (21477): label: null
W/MyApp (21477): number: null
W/MyApp (21477): type: null
W/MyApp (21477): mode: null
W/MyApp (21477): last_time_contacted: 1278113641980
W/MyApp (21477): display_name: (name removed for privacy)
W/MyApp (21477): im_handle: null
W/MyApp (21477): _id: 169
W/MyApp (21477): number_key: null
W/MyApp (21477): starred: 0
W/MyApp (21477): primary_email: null
W/MyApp (21477): name: (name removed for privacy)
W/MyApp (21477): primary_phone: null
W/MyApp (21477): im_account: null
W/MyApp (21477): notes:
W/MyApp (21477): im_protocol: null
W/MyApp (21477): send_to_voicemail: 0
Merci. Il semble que les vieux trucs pré-Eclair ne fonctionnent plus de manière fiable. Une fois que je suis passé à ContactsContract, les choses ont commencé à fonctionner. –