Я использую ormlite для базы данных sqlite в моем приложении для Android. Это приложение для входа в систему, и у меня есть база данных на SD-карте. Для пользователя abc требуется следующее: когда пользователь входит в систему под другим пользователем, например xyz, приложение аутентифицирует пользователя с сервера, а сервер заменяет базу данных для пользователя xyz. Но когда я пытаюсь получить доступ к учетным данным, он дает старые учетные данные, а база данных отражает новые учетные данные.
Я тоже пробовал:
DaoManager.clearCache();
Не работает и я попробовал:
DatabaseManager<DatabaseHelper> manager = new DatabaseManager<DatabaseHelper>();
manager.releaseHelper(DatabaseHelperGenerator.getDataBaseHelperInstance())
После этого, когда я попытался запустить этот запрос:
Dao<LoginAuthentication, Integer> loginAuthenticationDao = null;
DatabaseHelperGenerator.getDataBaseHelperInstance().
clearLoginDao(LoginAuthentication.class);
loginAuthenticationDao = DatabaseHelperGenerator.getDataBaseHelperInstance().
getUserDao(LoginAuthentication.class);
List<LoginAuthentication> loginAuthenticationList =
loginAuthenticationDao.queryForAll();
Это дает IllegalStateException :Database not open
Требуется помощь.