Blackberryでキャッシュストレージの概念を実行する方法は?

StackOverflow https://stackoverflow.com/questions/1204698

  •  05-07-2019
  •  | 
  •  

質問

2つのストレージを含むアプリケーションを作成する必要があります。1つは永続ストレージで、もう1つはキャッシュストレージです。ロード後、アプリケーションはキャッシュストレージデータでユーザー名とパスワードをチェックし、空の場合はそれを実行する必要がありますこのタスクを実行するにはどうすればよいですか?キャッシュには別の概念がありますか?

役に立ちましたか?

解決

RecordStore これも永続的、または RuntimeStore はすべてのアプリ間で共有されますが、永続的ではありません。

または、カスタムストレージクラスを使用してキャッシュ機能を実装することもできます。 そのクラスの値の保存、更新、アプリケーションクラスのフィールドとしての共有:

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;
    }
}

他のヒント

Coldiceは正しいですが、永続化する必要があり共有される可能性のあるデータにPersistentStore(またはRecordStore)とは別のストアを使用し、共有されているが永続的ではないデータにRuntimeStoreを使用する理由がわかりません。これは、通常のアプリケーション一時ストレージに複雑さを追加しているようです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top