연락처의 정보를 사용하여 BlackBerry Maps 열기

BlackBerry 단말기의 주소록 프로그램에 있는 연락처의 주소 정보를 사용하여 지도에 위치가 표시되도록 BlackBerry Maps를 열 수 있습니다.
  1. 필요한 클래스와 인터페이스를 가져옵니다.
    import net.rim.blackberry.api.invoke.*;
    import javax.microedition.pim.*;
  2. BlackBerry Maps를 호출하는 데 사용할 클래스와 생성자를 만듭니다.
    public class invokeMaps
    {
        public invokeMaps ()
        {
        }
    }
  3. 생성자에서 BlackBerry 단말기의 ContactList 객체의 인스턴스를 검색하고, Contact 클래스를 사용하여 연락처를 만듭니다. 연락처의 이름과 주소로 Contact를 채웁니다.
    ContactList contacts = null;
    try
    {
        contacts = (ContactList)
          PIM.getInstance().openPIMList(PIM.CONTACT_LIST, PIM.READ_ONLY);
    }
    catch (PIMException e)
    {
        return;
    }
    Contact contact = contacts.createContact();
    contact.addString(Contact.FORMATTED_NAME, PIMItem.ATTR_NONE,
      "Ms. Andrea Aime");
    contact.addString(Contact.FORMATTED_ADDR, PIMItem.ATTR_NONE,
      "455 Phillip St. Waterloo ON N2L3X2 Canada");
    String[] name = new String[ contacts.stringArraySize( Contact.NAME ) ];
    name[ Contact.NAME_GIVEN ] = "Andrea";
    name[ Contact.NAME_FAMILY ] = "Aime";
    name[ Contact.NAME_PREFIX ] = "Ms.";
    String[] addr = new String[ contacts.stringArraySize( Contact.ADDR ) ];
    addr[ Contact.ADDR_STREET ] = "455 Phillip St";
    addr[ Contact.ADDR_LOCALITY ] = "Waterloo";
    addr[ Contact.ADDR_REGION ] = "ON";
    addr[ Contact.ADDR_POSTALCODE ] = "N2L3X2";
    addr[ Contact.ADDR_COUNTRY ] = "Canada";
  4. 생성자에서 오프셋 0과 함께 Contact 객체를 전달하여 MapsArguments 객체를 만듭니다. Invoke.invokeApplication()을 호출하여 BlackBerry Maps를 엽니다. MapsArguments 객체를 전달합니다.
    MapsArguments mapsArgs = new MapsArguments(contact, 0);
    Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, mapsArgs);

코드 샘플: 연락처의 정보를 사용하여 BlackBerry Maps 호출

import net.rim.blackberry.api.invoke.*;
import javax.microedition.pim.*;
public class invokeMaps
{
    public invokeMaps()
    {
        ContactList contacts = null;
        try
        {
            contacts = (ContactList) PIM.getInstance().openPIMList
             (PIM.CONTACT_LIST, PIM.READ_ONLY);
        }
        catch (PIMException e)
        {
            return;
        }
        Contact contact = contacts.createContact();
        contact.addString(Contact.FORMATTED_NAME, PIMItem.ATTR_NONE,
          "Ms. Andrea Aime");
        contact.addString(Contact.FORMATTED_ADDR, PIMItem.ATTR_NONE,
          "455 Phillip St. Waterloo ON N2L3X2 Canada");
        String[] name = new String[ contacts.stringArraySize( Contact.NAME ) ];
        name[ Contact.NAME_GIVEN ] = "Andrea";
        name[ Contact.NAME_FAMILY ] = "Aime";
        name[ Contact.NAME_PREFIX ] = "Ms.";
        String[] addr = new String[ contacts.stringArraySize( Contact.ADDR ) ];
        addr[ Contact.ADDR_STREET ] = "455 Phillip St";
        addr[ Contact.ADDR_LOCALITY ] = "Waterloo";
        addr[ Contact.ADDR_REGION ] = "ON";
        addr[ Contact.ADDR_POSTALCODE ] = "N2L3X2";
        addr[ Contact.ADDR_COUNTRY ] = "Canada";
        MapsArguments mapsArgs = new MapsArguments(contact, 0);
        Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, mapsArgs);
    }
}

이 정보가 도움이 되었습니까? 의견을 보내 주십시오.