2014-06-18 16 views
7

Ciao voglio ottenere il contatto che vengono utilizzati da altre applicazioni (come WhatsApp o Viber) vedere in seguito immagineCome ottenere i contatti che vengono utilizzati in WhatsApp o altre applicazioni in Android

enter image description here

per favore aiutatemi su questo problema grazie

+0

Inizia da qui: http://developer.android.com/samples/BasicContactables/index.html – ditkin

+0

hi come trovare il numero di cellulare ex come il 1234567890 e la sua utilizzati in che cosa è app così come trovare la sua usato in whatsapp nella mia lista di contatti di applicazione? –

+0

Cosa hanno provato? Ci sono problemi con il codice che stai cercando di mettere in funzione? – ditkin

risposta

24

Con l'autorizzazione READ_CONTACTS nel manifest, è possibile ottenere contatti sincronizzati dato il tipo di account. Per WhatsApp è "com.whatsapp". Quindi:

Cursor c = getContentResolver().query(
     RawContacts.CONTENT_URI, 
     new String[] { RawContacts.CONTACT_ID, RawContacts.DISPLAY_NAME_PRIMARY }, 
     RawContacts.ACCOUNT_TYPE + "= ?", 
     new String[] { "com.whatsapp" }, 
     null); 

ArrayList<String> myWhatsappContacts = new ArrayList<String>(); 
int contactNameColumn = c.getColumnIndex(RawContacts.DISPLAY_NAME_PRIMARY); 
while (c.moveToNext()) 
{ 
    // You can also read RawContacts.CONTACT_ID to read the 
    // ContactsContract.Contacts table or any of the other related ones. 
    myWhatsappContacts.add(c.getString(contactNameColumn)); 
} 
+0

@matiash sta tornando Nome del contatto, per quanto riguarda i numeri? – CodeGuru

+0

@CodeGuru È possibile eseguire una query sulla tabella di dati con l'ID di contatto restituito da questa query. Tutte le informazioni per il contatto dovrebbero essere lì. – matiash

+0

@VijayRajput come posso ottenere il numero di contatto di whatsapp? Sto solo ricevendo il nome. –