如何在J2ME应用中使用个人信息管理(Personal Information Management)API

本文介绍J2ME环境下个人信息管理API的基本用法,包括如何通过PIM API创建事件并设置其属性,以及从vCard导入联系人的过程。

个人信息管理(Personal Information Management)(简称PIM)API是J2ME的可选包,它为访问和修改存在于移动设备上的PIM数据库提供了可能。三个主要的PIM数据库是联系人列表、事件列表、TO-DO列表。

下边的例子说明了如何使用PIM API创建一个事件

EventList events = null;
try {
    events = (EventList) PIM.getInstance().openPIMList(PIM.EVENT_LIST,
            PIM.READ_WRITE);
}
catch (SecurityException e) {}
catch (PIMException e) {}

Event event = events.createEvent();
try {
   
    if (events.isSupportedField(Event.LOCATION))
        event.addString(Event.LOCATION, PIMItem.ATTR_NONE, "Office");
   
    if (events.isSupportedField(Event.SUMMARY))
        event.addString(Event.SUMMARY, PIMItem.ATTR_NONE,
                "Please call Sam Huang");
   
    if (events.isSupportedField(Event.START))
        event.addDate(Event.START, PIMItem.ATTR_NONE,
                (new Date()).getTime() + 60000);
   
    if (events.isSupportedField(Event.END))
        event.addDate(Event.END, PIMItem.ATTR_NONE, 
                (new Date()).getTime() + 60000 * 5));
   
    if (events.isSupportedField(Event.ALARM))
        event.addInt(Event.ALARM, PIMItem.ATTR_NONE,
                (new Date()).getTime() + 60000 * 1));
   
    if (events.isSupportedField(Event.NOTE))
        event.addString(Event.NOTE, PIMItem.ATTR_NONE,
                "Please call Sam Huang");
   
    if (events.maxCategories() != 0 && events.isCategory("Reminder"))
        event.addToCategory("Reminder");
} catch (PIMException e) {
}

try {
    event.commit();
}
catch (SecurityException e) {}
catch (PIMException e) {}

try {
    events.close();
} catch (PIMException e) {} 

Illustration below imports Contact from vcard.

void importContact(InputStream is) {
    QuotedPrintableInputStream qpis = new QuotedPrintableInputStream(is);
    try {
        PIMItem[] items = PIM.getInstance().fromSerialFormat(qpis, "UTF-8");
        Contact c = (Contact) (items[0]);
        ContactList cl = (ContactList) PIM.getInstance().openPIMList(
                PIM.CONTACT_LIST, PIM.READ_WRITE);
       
        cl.importContact(c);
    } catch(PIMException pe) {
    } catch(IOException ioe) {
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值