2010-11-27 46 views
5

¿Cómo puedo saber cuántos contactos hay en la lista de contactos? Obtuve el número de contacto, pero una persona puede tener más de un contacto y quiero dar cuenta de esto para encontrar la cantidad total de contactos en la lista de contactos.cuántos contactos hay en la lista de contactos

Respuesta

11

Para encontrar el recuento de los números de teléfono de todos los contactos

Cursor cursor = managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null); 

int count = cursor.getCount(); 

Para encontrar el recuento de todos los números de teléfono de un RawContactID en particular (pasar el valor de identificación de contacto en rawContactId).

Cursor cursor = managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.RAW_CONTACT_ID + " = " + rawContactId, null, null); 

    int count = cursor.getCount(); 

El número de contactos que se muestran en la ContactsListActivity consiste se puede determinar mediante la siguiente consulta.

Cursor cursor = managedQuery(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); 

int count = cursor.getCount();

Sin embargo, si una persona ha sido ingresada en varias cuentas, solo se obtiene una sola instancia mediante la consulta anterior, ya que ContactsContract.Contacts combina todos esos contactos.

Cursor cursor = managedQuery(RawContacts.CONTENT_URI, null, null, null, null); 

int count = cursor.getCount();

La relación entre ContactsContract.Contacts y RawContacts se puede encontrar a cabo a http://developer.android.com/resources/articles/contacts.html

la esperanza que esto se resuelva su duda!

+0

lo siento pero es un trabajo excelente. Me está dando a mí también que dosent tienen contacto no., que solo tienen identificaciones de correo electrónico. Entonces, ¿podemos tener el número total de números de teléfono que están almacenados en la lista de contactos? – nimi

+0

Ya este código devolverá todos los contactos. No puedo obtener el requerimiento exacto. Respondí la siguiente pregunta "¿Cómo puedo saber cuántos contactos hay en la lista de contactos?" ¿Necesita encontrar la cantidad total de números telefónicos de todos los contactos? En ese caso, estoy editando mi respuesta. –

+0

muchas gracias señor ... funcionó – nimi

0

Un hilo muy viejo, pero si se desea contar contactos con números de teléfono que puede utilizar esto:

Cursor cursor = managedQuery(ContactsContract.Contacts.CONTENT_URI, null, ContactsContract.Contacts.HAS_PHONE_NUMBER, null, null); 
int count = cursor.getCount(); 

Por supuesto managedQuery es obsoleto ahora, pero esto puede ayudar en un aprieto :)

Cuestiones relacionadas