Palm OS Implementation of Record Stores

The storage of a record store on the device is implementation-dependent. The implementation of the record store, and even where it is stored, will vary from platform to platform, and is not defined in the MIDP or CLDC specifications. The Palm OS implementation of MIDP uses a Palm OS database to store the record store.

Although it may be tempting to use this database as you might normally use Palm OS databases, such as to write a conduit that accesses the database and synchronizes the data, there are two important reasons why this is not a good idea:

  • The format of the database is not specified or supported, and it may change.

  • There are platform-supported ways to transfer information to and from a device. We will look at networking to do this in Chapter 7, "Networking," but basically we will use HTTP to get data to and from the device. Note that this can work whether the Palm device is plugged into the cradle or whether it is connected to a modem over a wireless connection.

This book attempts to support standards where they exist, for the following reasons:

  1. Standards make it easier to port an application to other platforms supported by the standard.

  2. Standards make it easier for developers to understand what you have written.

  3. An application written using a standard makes it more likely to survive future versions of the platform.

  4. An application written using a standard makes it easier (and possible) to use new features in future versions of the platform.

For these reasons, accessing the record store database directly is not recommended.[2]

[2] If you are willing to take the risk and write a conduit that reads the record store database anyway, you will find some hints in forum discussions like this one: http://archives.java.sun.com/cgi-bin/wa?A2=ind0108&L=kvm-interest&D=0&H=0&O=T&T=1&P=49045.