Недостаточно памяти (OOMs) с использованием Fresco в переработчике - PullRequest
0 голосов
/ 01 мая 2018

Я ранее использовал Glide, но это дало мне слишком много OOM. Тогда я начал использовать Fresco с Facebook. Тем не менее я получаю ООМ. Я использую Фреско в recylerviews. Я пробовал следующее

holder.image.setImageURI(item.getImageUrl());

и

ImageRequestBuilder imageRequestBuilder = ImageRequestBuilder.newBuilderWithSource(Uri.parse(item.getImageUrl()));

    DraweeController draweeController = Fresco.newDraweeControllerBuilder()
            .setOldController(holder.image.getController())
            .setAutoPlayAnimations(true)
            .build();
    hold.image.setController(draweeController);

Может кто-нибудь сказать мне, почему растровые изображения не перерабатываются (я предположил, что это проблема)?

После проверки использования памяти я обнаружил, что часть кода Java продолжает увеличиваться

1 Ответ

0 голосов
/ 01 мая 2019

Возможно, вам следует изменить размер своих изображений в бэкэнде, прежде чем запрашивать их, и закрасить их в просмотрщик, но также вы можете сделать кеширование в виде просмотрщика с помощью этой строки (как пример): mRecycler.setItemViewCacheSize(20)

...