如何在Blackberry中执行缓存存储概念?

时间:2009-07-30 05:58:31

标签: blackberry

我需要创建一个应用程序,它应该包含两个存储空间,一个是持久存储空间,另一个是缓存存储空间。加载后,应用程序应该检查用户名和密码以及缓存存储数据,如果它是空的那么应该检查持久性存储。如何完成此任务?是否有任何单独的缓存概念或我们创建持久性为cache.please帮助我。

2 个答案:

答案 0 :(得分:1)

您可以使用也是持久的RecordStore,或者RuntimeStore,它在所有应用之间共享但非持久性。

或者,您可以使用一些自定义存储类来实现缓存功能, 存储,更新该类中的值,将其作为Application类的字段共享:

class Cache {

    String mName = null;
    String mPhone = null;
}

public class CacheApp extends UiApplication {
    Cache mCache = null;
    public static void main(String[] args) {
        CacheApp app = new CacheApp();
        app.enterEventDispatcher();
    }

    public CacheApp() {
        initCache();

        CacheScr scr = new CacheScr();
        pushScreen(scr);
    }

    private void initCache() {
        mCache = new Cache();
        mCache.mName = "Name";
        mCache.mPhone = "Phone";
    }
}

class CacheScr extends MainScreen {

    public CacheScr() {
        CacheApp app = (CacheApp) UiApplication.getUiApplication();
        String name = app.mCache.mName;
        String phone = app.mCache.mPhone;
    }
}

答案 1 :(得分:0)

Coldice是正确的,但是我不明白为什么人们会使用与PersistentStore(或RecordStore)分开的商店来获取必须忍受并且可以共享的数据,以及RuntimeStore用于共享但不耐用的数据。这似乎增加了正常应用程序瞬态存储的复杂性。