Parse: Как я могу получить Relation из локального хранилища данных (… fromLocalDatastore ())?

Я разрабатываю приложение для обучения и использую Parse (parse.com) в качестве источника данных.

Я выполняю загрузку всех объектов моих классов в процессе разбора и сохраняю в локальном магазине, в котором есть Parse. Следующий фрагмент кода, который выполняет одну из загрузок:

public void noticia_getOrUpdate(boolean isUpdate) throws ParseException {
        ParseQuery<Noticia> query = new ParseQuery(Noticia.class);
        query.orderByDescending("createdAt");
        List<Noticia> lNoticias = null;

        try {
            if (isUpdate) {
                lNoticias = query.whereGreaterThan("updatedAt", this.sPref.ultimaAtualizacao_noticia()).find();
                if (!lNoticias.isEmpty())
                    ParseObject.pinAllInBackground(lNoticias);
            } else {
                query.whereEqualTo("ativo", true);
                lNoticias = query.find();

                for (Noticia noticia : lNoticias) {
                    if (noticia.getUpdatedAt().getTime() > this.sPref.ultimaAtualizacao_noticia().getTime())
                        this.sPref.atualiza_noticia(noticia.getUpdatedAt());
                }

                ParseObject.pinAllInBackground(lNoticias);
                this.sPref.atualiza_isUpdate(true);
            }
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }

Проблема в том, что я загружаю все свои классы, один из них - тип файла, это файл, который работает как изображение для моих новостей («Noticia»). Я могу загрузить и сохранить все данные на месте хранения, но не могу восстановить, используя следующий код:

public static byte[] NoticiaMidiaRelation(Noticia noticia) {
        try {
            ParseRelation<Midia> relation = noticia.getImagem();
            Midia midia = relation.getQuery().fromLocalDatastore.whereEqualTo("ativo", true).getFirst();

            if (midia != null && midia.getFileData() != null)
                return midia.getFileData();
        } catch (ParseException e) {
            e.printStackTrace();
        }
    return null;
}

Если отменить «fromLocalDatastore» запрос, он ищет сервер и правильно доставляет файл, но не хочет его повторять, потому что, как уже было сказано, такое же изображение уже хранится в локальном хранилище данных.

Еще один способ сделать это - получить отношение Media Id, после чего выполнить поиск для сравнения ObjectId в локальном хранилище, но я думаю, что нет никакого свойства для свойства parent. Но если таковые имеются, могут быть использованы в качестве решения.

Ответы на вопрос(1)

Ваш ответ на вопрос