黑莓持久存储 - 手持设备重启后无数据保存

时间:2011-04-18 07:43:30

标签: blackberry java-me blackberry-eclipse-plugin persistent-storage

我正在尝试为黑莓编写应用程序而我正在使用持久性存储,但是当我重新启动设备时,数据会丢失。任何人都知道为什么会发生这种情况? 在此先感谢大家!

    public static void add(Subscription s) throws IOException {
        Vector subscriptions = SubscriptionsController.getSubscriptions();
        if(subscriptions == null) subscriptions = new Vector();
        subscriptions.addElement(s);
        synchronized(SubscriptionsController.persistedSubscriptions) {
            SubscriptionsController.persistedSubscriptions.setContents(subscriptions);
            SubscriptionsController.persistedSubscriptions.commit();
        }
    }

2 个答案:

答案 0 :(得分:2)

我假设(总是一个坏主意lol)你有子类PersistentStore / PersistentObject(因为你可以commit()等)? 你是否实现了Persistable(它不是由子类继承的)?

答案 1 :(得分:1)

据我所知,

SubscriptionsController不是Blackberry类。看起来您的意外行为是由于此类的实现。

如果您希望在设备重置期间保持对象状态,则需要使用PersistentStore API将对象序列化到Blackberry上的文件。 RIM网站上的This document解释了对PersistentStore

的使用