Проблема с проверкой файлов
Пишу приложение, в котором можно установить все игры компании.
Проблема с проверкой файлов. Если я захожу на страницу игры первый раз, пишет что игра в обновлении не нуждается, хотя это не так. Стоит выйти на список всех игр и когда возвращаюсь - уже подгружает нормально данные.
Пробовал многое. И загружал заранее и цикл выносил. Ничего не помогло. Меня эта проверка ввела в ступор.
Код:
if(!App.getInstance().isGameFilesValid(this, id)) { // сама проверка
statusLayout.setVisibility(View.VISIBLE);
statusText.setText("Доступно обновление игры.\nДля установки обновления нажмите на кнопку справа.");
Utils.setInstallType(Utils.INSTALL_TYPE_UPDATE_GAME_FILES);
Utils.setInstallingGameID(id);
downloaderResumeLayout.setVisibility(View.VISIBLE);
} else {
playBtn.setClickable(true);
playBtn.setBackgroundResource(R.drawable.reg_btn_end);
statusLayout.setVisibility(View.VISIBLE);
statusText.setText("Установлена актуальная версия игры: " + verName);
}
public boolean isGameFilesValid(Context context, int gameID) {
loadGameFilesList(context, gameID);
for(int i = 0; i < gamesFiles.size(); i++) {
File file = new File(Config.getGamePath(gameID)+gamesFiles.get(i).path);
if(!file.exists() || !Utils.checkMD5(context, gamesFiles.get(i).size, file)) {
return false;
}
}
return true;
}
ну а loadGameFilesList просто загрузка данных с json (retrofit2), она работает идеально.