2010-11-29 10 views
6

estoy usando un selector de contactos de la siguiente manera:contactos de Android vs RAW_CONTACT_ID contact_id

Intent contactPickerIntent = new Intent(Intent.ACTION_PICK, 
             Contacts.CONTENT_URI); 
startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT) 

Lo que yo quiero saber es si el último segmento de la ruta URI devuelto es el CONTACT_ID o la RAW_CONTACT_ID.

En caso de que sea el CONTACT_ID, ¿cómo recupero todos RAW_CONTACT_ID s de este contacto?

Respuesta

5

Usted recibirá contact_id como los datos de retorno.

En caso si usted necesita para obtener la lista de todos los RAW_CONTACT_ID del contacto aquí es lo que puede incluir en

@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    super.onActivityResult(requestCode, resultCode, data); 

    if ((requestCode == 1) && (resultCode == RESULT_OK)){ 

     Uri contactData = data.getData(); 
     // This gives the value of Contact URI     
     Cursor c = managedQuery(RawContacts.CONTENT_URI, new String[] {RawContacts._ID}, RawContacts.CONTACT_ID + " = " + contactData.getLastPathSegment(), null, null); 
     // This query would give you list of Raw_COntact_ID for the added contact 
    } 
} 
+0

lo que tenemos que pasar como "datos"? – AndroidRaji

+0

"datos" (Intención) se volvió de ContactPicker. He formateado la respuesta correctamente. Espero que esté claro ahora. –

0

¿Usted necesita para usar el CONTACT_ID?

De lo contrario, le recomiendo que utilice LOOKUP_KEY lugar.

Ver 1 y 2

Cuestiones relacionadas