У меня есть приложение BlackBerry, которое запускается (загрузка приложения) с экрана регистрации при первой установке приложения. Позже приложение загрузится с главным экраном. Экран регистрации появляется только при первой загрузке. Я добиваюсь этого, сохраняя значение boolean
в PersistentStore
. Если значение существует, то экран регистрации не появится.
PersistentStoreHelper.persistentHashtable.put("flagged",Boolean.TRUE);
PersistentStoreHelper.persistentObject.commit();
UiApplication.getUiApplication().pushScreen(new MyScreen());
Мне известно, что для удаления постоянного хранилища при удалении / удалении приложения я должен сделать Hashtable своим собственным подклассом, и поэтому я объявил Hashtable в отдельном классе:
public class PersistentStoreHelper extends Hashtable implements Persistable{
public static PersistentObject persistentObject;
public static final long KEY = 0x9df9f961bc6d6daL;
public static Hashtable persistentHashtable;
}
Однако это не помогло, и значение boolean
флага не сбрасывается с PersistentStore
. Пожалуйста посоветуй.
ИЗМЕНИТЬ: когда я изменяю вышеупомянутый класс PersistentStoreHelper на
public static PersistentObject persistentObject =
PersistentStore.getPersistentObject(KEY);
и удалить
PersistentStoreHelper.persistentObject =
PersistentStore.getPersistentObject(PersistentStoreHelper.KEY);
из класса B, где сохраняется значение boolean
, я заметил, что значение boolean
удаляется каждый раз, когда приложение закрывается. Этого не должно происходить, и значение следует удалять только в случае удаления / удаления приложения. Есть указатели?