Sto lavorando su un'applicazione Android Honeycomb (v3.0) che ha l'obbligo di visualizzare TUTTI i contatti memorizzati nell'account Google registrato sul dispositivo. Uno dei problemi che ho riscontrato è che posso recuperare solo i contatti disponibili in "I miei contatti", "Speciali in Android" e "Altri contatti". Mi piacerebbe anche essere in grado di recuperare i contatti dalla "Directory". Credo che la sezione "Directory" sia una funzionalità fornita da Google a organizzazioni e aziende che desiderano fornire agli altri una directory di tutti i membri/dipendenti all'interno dei propri domini. Si prega di vedere la schermata qui sotto:Android 3.0 - Come recuperare TUTTI i contatti tramite ContactsContract
Finora, ho la seguente riga nel mio file manifesto:
<uses-permission android:name="android.permission.READ_CONTACTS" />
Ho provato con questo codice:
Cursor cursor = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
}
cursor.close();
In il mio caso, "I miei contatti" e "Speciali in Android" sono vuoti. Tuttavia, si ottiene il contatto (1) in "Altri contatti". La "Directory" contiene centinaia di contatti che non vengono recuperati, però.
La mia domanda: C'è un modo per assicurarsi che i contatti nella "Directory" siano recuperati pure? So che posso semplicemente copiare i contatti usando il browser web e quindi sincronizzarli con il dispositivo, ma se un nuovo contatto viene aggiunto alla "Directory", dovrei farlo manualmente ogni volta, quindi questo non è una grande scelta per me. Si prega di avvisare.
http://developer.android.com/resources/samples/ContactManager/index.html – VicVu
Ho appena provato il codice nei getContacts funzione() (ContactManager. file java), ma non ci sono voci, non importa quello che ho impostato su mShowInvisible. – BVB
Impostazione 'String selection = null;' ha restituito lo stesso risultato che avevo originariamente con il codice che ho menzionato. – BVB