Benachrichtigen einer Anwendung über Änderungen an einer Kontaktliste

Sie können Ihre Anwendung dafür registrieren, Benachrichtigungen über Änderungen an den Kontaktlisten auf einem BlackBerry-Gerät zu erhalten, indem Sie die PIMListListener-Schnittstelle implementieren. Die PIMListListener-Schnittstelle stellt die folgenden Methoden bereit:

  • itemAdded(PIMItem item) wird aufgerufen, wenn ein Element zu einer Kontaktliste hinzugefügt wird
  • itemUpdated(PIMItem oldItem, PIMItem newItem) wird aufgerufen, wenn sich ein Element ändert
  • itemRemoved(PIMItem item) wird aufgerufen, wenn ein Element aus einer Kontaktliste gelöscht wird
  1. Importieren Sie die erforderlichen Klassen und Schnittstellen.
    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;
  2. Um Änderungsbenachrichtigungen für die Standardkontaktliste zu erhalten, rufen Sie PIM.openPIMList(int, int) auf, um die Instanz der Standardkontaktliste zu öffnen, wobei Sie als Parameter die Art der zu öffnenden Liste (PIM.CONTACT_LIST) sowie den Zugriffsmodus, mit dem die Liste geöffnet werden soll (PIM.READ_WRITE, PIM.READ_ONLY oder PIM.WRITE_ONLY), übergeben. Fahren Sie mit Schritt 4 fort.
    BlackBerryContactList contactList = (BlackBerryContactList) 
       PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE);
  3. Um Änderungsbenachrichtigungen für eine Kontaktliste zu empfangen, die nicht die Standardkontaktliste ist, führen Sie die folgenden Aktionen aus:
    1. Rufen Sie listPIMLists(int) auf, wobei Sie als Parameter die Art der zu öffnenden Liste (PIM.CONTACT_LIST) übergeben, um ein Array von String-Objekten zurückzugeben. Das zurückgegebene Array stellt den vom System zugewiesenen Namen für jede Kontaktliste bereit. Die Standardkontaktliste wird bei Index 0 des Arrays zurückgegeben.
      String[] lists = PIM.listPIMLists(PIM.CONTACT_LIST);
    2. Führen Sie eine Iteration durch das Array durch, das PIM.listPIMLists() zurückgibt, um den vom System zugewiesenen Namen für die Kontaktliste zu suchen, für die Sie Änderungsbenachrichtigungen erhalten möchten.
    3. Rufen Sie PIM.openPIMList(int, int, String) auf, um die Instanz der Kontaktliste zu öffnen, wobei Sie als Parameter die Art der zu öffnenden Liste (PIM.CONTACT_LIST), den Zugriffsmodus, mit dem die Liste geöffnet werden soll (PIM.READ_WRITE, PIM.READ_ONLY oder PIM.WRITE_ONLY), sowie den Namen der Kontaktliste übergeben.
      BlackBerryContactList contactList = (BlackBerryContactList) 
         PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_WRITE, name);
  4. Rufen Sie BlackBerryPIMList.addListener() auf, um einen Listener für die Kontaktliste zu registrieren.
    (BlackBerryPIMList) contactList.addListener(new PIMListListener());
  5. Überschreiben Sie die Methoden PIMListListener.itemAdded(), PIMListListener.itemUpdated() und PIMListListener.itemRemoved(), um das Benachrichtigungsverhalten zu konfigurieren.
    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));
    }
    
  6. Prüfen Sie auf PIMException und auf ControlledAccessException, wenn Ihre Anwendung nicht die Berechtigung besitzt, auf die Anwendung zuzugreifen, die sie aufruft.
Vorheriges Thema: Löschen eines Kontakts

Waren diese Informationen hilfreich? Senden Sie uns Ihren Kommentar.