Come eseguire il concetto di archiviazione cache in Blackberry?
-
05-07-2019 - |
Domanda
Devo creare un'applicazione, che dovrebbe contenere due memorie, una è memoria permanente e un'altra è memoria cache. Dopo il caricamento, l'applicazione dovrebbe controllare il nome utente e la password con i dati di memoria cache se è vuota, quindi dovrebbe verificare con l'archiviazione persistente. Come eseguire questa attività? Esiste un concetto separato di cache o abbiamo creato il persistente come cache.Please help me.
Soluzione
Puoi utilizzare RecordStore che è anche persistente o RuntimeStore che è condiviso tra tutte le app ma non è persistente.
In alternativa puoi utilizzare alcune classi di archiviazione personalizzate per implementare la funzionalità cache, memorizzazione, aggiornamento dei valori in quella classe, condivisione come campo della classe Applicazione:
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;
}
}
Altri suggerimenti
Coldice è corretto, tuttavia non riesco a capire perché si debba usare un negozio separato da PersistentStore (o RecordStore) per i dati che devono durare e che possono essere condivisi e RuntimeStore per i dati condivisi ma non durevoli. Questo sembra solo aggiungere complessità alla normale memoria temporanea delle applicazioni.