Recuperar información de contacto

Puede recuperar información de una lista de contactos de un dispositivo BlackBerry invocando uno de los métodos PIMList.items(). Estos métodos devuelven una enumeración de todos los contactos de una lista de contactos específica. Puede invocar los métodos BlackBerryContactList.items() para devolver grupos de contactos.

  1. Importe las clases y las interfaces necesarias.
    import net.rim.blackberry.api.pdap.BlackBerryContact;
    import net.rim.blackberry.api.pdap.BlackBerryContactList;
    import net.rim.blackberry.api.pdap.BlackBerryPIMList;
    import java.util.Enumeration;
    import javax.microedition.pim.PIM;
    import javax.microedition.pim.PIMException;
    import javax.microedition.pim.PIMItem;
  2. Invoque PIM.getInstance() para recuperar una instancia PIM e invocar PIM.openPIMList() para abrir una instancia de la lista de contactos, pasando como parámetros el tipo de lista que se va a abrir (PIM.CONTACT_LIST), el modo de acceso con el que abrir la lista (PIM.READ_WRITE, PIM.READ_ONLY, o PIM.WRITE_ONLY), y el nombre si no va a abrir la lista de contactos predeterminada.
    BlackBerryContactList contactList = (BlackBerryContactList) 
        PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE);
  3. Invoque PIMList.items() para recuperar una enumeración de elementos de una lista de contactos.
    Enumeration _enum = contactList.items();
  4. Invoque uno de los métodos getter de PIMItem para recuperar información de contacto.
    • Para recuperar una matriz de campos que contengan los datos de un contacto especificado, invoque PIMItem.getFields().
    • Para recuperar un String que represente el valor para un campo de contactos especificado, invoque PIMItem.getString(int field, int index).
    • Para recuperar una fecha que represente el valor para un campo de contactos especificado, invoque PIMItem.getDate(int field, int index).
    while (_enum.hasMoreElements())
    {
         BlackBerryContact c = (BlackBerryContact)_enum.nextElement();
         int[] fieldIds = c.getFields();
         int id;
         for(int index = 0; index < fieldIds.length; ++index)
         {
              id = fieldIds[index];
              if(c.getPIMList().getFieldDataType(id) == BlackBerryContact.STRING)
              {
                   for(int j=0; j < c.countValues(id); ++j)
                   {
                        String value = c.getString(id, j);
                        System.out.println(c.getPIMList().getFieldLabel(id) + "=" 
                          + value);
                   }
              }
         }
    }

¿Le ha resultado útil esta información? Envíenos sus comentarios.