Troubleshooting guide
167
11: Using PIM applications
Code sample: Creating new recurring appointments
To let the BlackBerry® device user invite attendees to the meeting, combine this code sample with
ContactsDemo.java.
See “Code sample: Displaying a screen that lets BlackBerry device users add new contacts” on page 175 for more
information.
Example: EventDemo.java
/**
* EventDemo.java
* Copyright (C) 2002-2005 Research In Motion Limited.
*/
package com.rim.samples.docs.eventdemo;
import java.io.*;
import java.util.*;
import javax.microedition.pim.*;
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.i18n.*;
import net.rim.device.api.system.*;
import net.rim.device.api.util.*;
public final class EventDemo extends UiApplication
{
Import an appointment. 1. Write appointment to iCal.
String[] dataFormats = PIM.eventSerialFormats();
ByteArrayOutputStream os = new ByteArrayOutputStream();
PIM.getInstance().toSerialFormat(event, os, "UTF8", dataFormats[0]);
2. Import appointment from iCal.
ByteArrayInputStream is = new
ByteArrayInputStream(outputStream.toByteArray());
3. To return an array of PIMItem objects, invoke fromSerialFormat(java.io.InputStream
is, java.lang.String enc)
PIMItem[] pi = PIM.getInstance().fromSerialFormat(is, "UTF8");
4. To add a new appointment, invoke EventList.importEvent().
EventList eventList = (EventList)PIM.getInstance().openPIMList(
PIM.EVENT_LIST, PIM.READ_WRITE);
Event event2 = eventList.importEvent((Event)pi[0]);
Close an event list. 1. Invoke close().
2. Create a try-catch block to manage a PimException.
try {
eventList.close();
} catch (PimException e) {
// Handle exception.
}
Task Steps