RMS problem

After I installed an application to my phone, and the application contains a RMS. When I run this application, it can save my highest score.
However, after I closed my application, all data (record) will be lost.
Does it is possible to make a permanent database in the application?
Thanks a lot!
My RMS to open a database is:
public static RecordStore openRSAnyway (String rsname)
{

RecordStore rs = null;

if(rsname.length()>32)
return null;
try {
rs = RecordStore.openRecordStore(rsname, true);
return rs;
} catch (Exception e)
{
return null;
}
}

public static RecordStore openRSExisted(String rsname)
{
RecordStore rs = null;
if (rsname.length()>32)
return null;
try {
rs = RecordStore.openRecordStore(rsname, false);
return rs;
} catch (Exception e)
{
return null;
}
}

public static int writeInt2RS(RecordStore rs, int data)
{
byte []tmp = new byte[4];
tmp[0] = (byte)(0xff&(data>>24));
tmp[1] = (byte)(0xff&(data>>16));
tmp[2] = (byte)(0xff&(data>>8));
tmp[3] = (byte)(0xff&(data>>0));
try
{
return rs.addRecord(tmp, 0, tmp.length);
} catch(Exception e)
{
}
return -1;
}

you are calling closeRecordStore(), arn’t you?

If you don’t, its upto the implementation to decide whether to actually save your data, or to simply discard it.

I called closeRecordStore() already:
public class GameScreen extends Canvas {

rs = RMSUtil.openRSAnyway(dbname);

public void paint() {

rs = RMSUtil.openRSExisted(dbname);
if (rs==null)
{
g.setColor(255, 255, 255);
g.drawString("Your Score "+String.valueOf(spriteScore), 0, 20, Graphics.TOP|Graphics.LEFT);
}
else {
try {
if (spriteScore>=RMSUtil.readInt4RS(rs, r1)) {
r1 = spriteScore;
r1 = RMSUtil.writeInt2RS(rs, spriteScore);
g.setColor(255, 255, 255);
g.drawString(“Highest Score” +String.valueOf(RMSUtil.readInt4RS(rs, r1)), 0, 40, Graphics.TOP|Graphics.LEFT);
rs.closeRecordStore();
}
else
{
g.setColor(255, 255, 255);
g.drawString("Highest Score " +String.valueOf(RMSUtil.readInt4RS(rs, r1)), 0, 40, Graphics.TOP|Graphics.LEFT);
rs.closeRecordStore();
}
} catch (Exception e) {}
}

}


}

But it doesnt work, did I have another thing go wrong?
Thanks for your reply

The number of calls to open and close must both match.

Your example above appears to open it twice, and close it only once.

I tried to close the record store.
But it also saves the record during the game is running, and the record will lost after I close the application.
???
Thanks for your reply