Recupero di contatti dal numero di telefono

È possibile cercare in tutti gli elenchi contatti o in un elenco contatti specifico di un dispositivo BlackBerry i contatti corrispondenti a un numero di telefono specificato.

  1. Importare le classi e le interfacce richieste.
    import net.rim.blackberry.api.pdap.BlackBerryContact;
    import net.rim.blackberry.api.pdap.BlackBerryContactList;
    import net.rim.blackberry.api.pdap.BlackBerryPIMList;
    import net.rim.blackberry.api.phone.Phone;
    import java.util.*;
    import javax.microedition.pim.PIM;
    import javax.microedition.pim.PIMException;
    import javax.microedition.pim.PIMItem;
  2. Effettuare una delle seguenti operazioni:
    1. Per cercare in tutti gli elenchi contatti, richiamare Phone.getContactsByPhoneNumber(), che restituisce un oggetto Vector contenente i contatti corrispondenti al numero di telefono specificato. Se non esistono contatti corrispondenti, l'oggetto Vector è vuoto.
      Vector contacts = Phone.getContactsByPhoneNumber(phoneNum);
    2. Per cercare in un elenco contatti specifico, richiamare BlackBerryContactList.itemsByPhoneNumber(), che restituisce un oggetto Enumeration di tutti i contatti corrispondenti al numero di telefono specificato. Ciascuna degli elementi nell'oggetto Enumeration costituisce un oggetto PIMItem, di cui è possibile eseguire il cast per un oggetto BlackBerryContactList.
      BlackBerryContactList list = (BlackBerryContactList) 
         PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE, "test");
      Enumeration myEnum = list.itemsByPhoneNumber(phoneNum);

Esempio di codice

try
{
   BlackBerryContactList list = (BlackBerryContactList) 
      PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE, "test");
   Enumeration myEnum = list.itemsByPhoneNumber(phoneNum);
   while (myEnum.hasMoreElements())
   {
      Object o = myEnum.nextElement();
      if (o instanceof BlackBerryContact)
      {
         BlackBerryContact c = (BlackBerryContact) o;
         String[] name = c.getStringArray(Contact.NAME, 0);
         add(new RichTextField("A matching contact is " + 
            name[Contact.NAME_GIVEN] + " " + name[Contact.NAME_FAMILY]));
      }
   }
}
catch (Exception e)
{
   System.out.println(e.getMessage());
}

Le informazioni sono state utili? Inviateci i vostri commenti.