Blackberry Contact Listener - PullRequest
       15

Blackberry Contact Listener

0 голосов
/ 03 июня 2011

Я хочу установить прослушиватель событий для BlackBerry, который изменяет некоторую информацию о контакте при его изменении, добавлении, изменении контакта.В моем приложении я хочу получить контакт при использовании добавить новый контакт или изменить контакт.

1 Ответ

2 голосов
/ 08 июня 2011

Вот простой класс, который будет прослушивать изменения в адресной книге BlackBerry.

import java.util.Enumeration;
import javax.microedition.pim.Contact;
import javax.microedition.pim.ContactList;
import javax.microedition.pim.PIMItem;
import javax.microedition.pim.PIMList;
import net.rim.blackberry.api.pdap.PIMListListener2;


final class MyPIMListener implements PIMListListener2
{
    public void itemAdded ( PIMItem item )
    {
        if ( item == null )
        {
            return;
        }

        Contact contact = (Contact)item;
        // ...
    }

    public void itemRemoved ( PIMItem item )
    {
        if ( item == null )
        {
            return;
        }

        Contact contact = (Contact)item;
        // ...
    }

    public void itemUpdated ( PIMItem oldItem, PIMItem newItem )
    {
        if ( oldItem == null || newItem == null )
        {
            return;
        }

        itemRemoved(oldItem);
        itemAdded(newItem);
    }

    public void batchOperation ( PIMList list )
    {
        if ( list == null )
        {
            return;
        }

        try
        {
            ContactList contactList = (ContactList)list;
            Enumeration e = contactList.items();

            while ( e.hasMoreElements() )
            {
                Contact contact = (Contact)e.nextElement();
                // ...
            }
        }
        catch ( Exception e )
        {
            // ...
        }
    }
}

Чтобы использовать вышеуказанный класс, вам необходимо добавить его экземпляр в качестве прослушивателя в список контактов BlackBerry. Вот как бы вы это сделали:

MyPIMListener listener = new MyPIMListener();
ContactList contactList = (ContactList)PIM.getInstance().openPIMList(
    PIM.CONTACT_LIST, PIM_READ_ONLY);

BlackBerryPIMList blackberryContactList = (BlackBerryPIMList)contactList;
blackberryContactList.addListener(listener);
...