Invio a un'applicazione di una notifica circa la modifica di un elenco di contatti
È possibile registrare l'applicazione in modo che riceva una notifica circa le modifiche agli elenchi contatti su un dispositivo BlackBerry implementando l'interfaccia PIMListListener. L'interfaccia PIMListListener fornisce i seguenti metodi:
- itemAdded(PIMItem item), richiamato quando una voce viene aggiunta a un elenco contatti.
- itemUpdated(PIMItem oldItem, PIMItem newItem), richiamato quando una voce cambia
- itemRemoved(PIMItem item), richiamato quando una voce viene rimossa da un elenco contatti.
- Importare le classi e le interfacce richieste.
import net.rim.blackberry.api.pdap.BlackBerrryContact;
import net.rim.blackberry.api.pdap.BlackBerryContactList;
import net.rim.blackberry.api.pdap.BlackBerryPIMList;
import net.rim.blackberry.api.pdap.PIMListListener;
import net.rim.device.api.system.ControlledAccessException;
import javax.microedition.pim.PIMList;
import javax.microedition.pim.PIMException;
- Per ricevere notifiche circa le modifiche all'elenco contatti predefinito, richiamare PIM.openPIMList(int, int) per aprire l'istanza dell'elenco contatti predefinito, passando come parametri il tipo di elenco da aprire (PIM.CONTACT_LIST) e la modalità di accesso con cui aprire l'elenco (PIM.READ_WRITE, PIM.READ_ONLY o PIM.WRITE_ONLY). Andare al passaggio 4.
BlackBerryContactList contactList = (BlackBerryContactList)
PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE);
- Per ricevere notifiche circa le modifiche a un elenco contatti non predefinito, effettuare le seguenti azioni:
- Richiamare listPIMLists(int), passando come parametro il tipo di elenco da aprire (PIM.CONTACT_LIST), per restituire una matrice di oggetti String. La matrice restituita fornisce i nomi assegnati dal sistema per ogni elenco contatti. L'elenco contatti predefinito viene restituito all'indice 0 della matrice.
String[] lists = PIM.listPIMLists(PIM.CONTACT_LIST);
- Scorrere la matrice restituita da PIM.listPIMLists() per trovare il nome assegnato dal sistema relativo all'elenco contatti per il quale si desidera ricevere le notifiche.
- Richiamare PIM.openPIMList(int, int, String) per aprire l'istanza dell'elenco contatti, passando come parametri il tipo di elenco da aprire (PIM.CONTACT_LIST), la modalità di accesso con cui aprire l'elenco (PIM.READ_WRITE, PIM.READ_ONLY o PIM.WRITE_ONLY) e il nome dell'elenco contatti.
BlackBerryContactList contactList = (BlackBerryContactList)
PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE, name);
- Richiamare BlackBerryPIMList.addListener() per registrare un listener per l'elenco contatti.
(BlackBerryPIMList) contactList.addListener(new PIMListListener());
- Sovrascrivere i metodi PIMListListener.itemAdded(), PIMListListener.itemUpdated() e PIMListListener.itemRemoved() per configurare il comportamento di notifica.
public void itemAdded(PIMItem item)
{
System.out.println("ITEM ADDED: " +
(BlackBerryContact) item.getString(BlackBerryContact.UID, 0));
}
public void itemUpdated(PIMItem oldItem, PIMItem newItem)
{
System.out.println("ITEM UPDATED: " + (BlackBerryContact)
oldItem.getString(BlackBerryContact.UID, 0) + " to " +
(BlackBerryContact) newItem.getString(Contact.UID, 0));
}
public void itemRemoved(PIMItem item)
{
System.out.println("ITEM REMOVED: " +
(BlackBerryContact) item.getString(BlackBerryContact.UID, 0));
}
- Verificare la presenza di PIMException e ControlledAccessException se l'applicazione non dispone dell'autorizzazione per accedere all'applicazione che richiama.
Le informazioni sono state utili? Inviateci i vostri commenti.