java .lang.OutOfMemoryError: Java пространство кучи в BitmapFactory.decodeResource () - PullRequest
0 голосов
/ 16 апреля 2020

Я получаю java .lang.OutOfMemoryError: Java пространство кучи , когда я пытаюсь запустить модульный тест (Тест еще не завершен: P ). Я прочитал другие ответы и попробовал их, но они мне не помогли. Я также пытался android: largeHeap = "true" , но затем я получаю ту же ошибку. Что я делаю не так?

Я получаю сообщение об ошибке BitmapFactory.decodeResource () , хотя я установил inJustDecodeBounds = true .

Вот тест: -

package org.catrobat.catroid.test.common;

import android.content.Context;
import android.graphics.BitmapFactory;
import org.catrobat.catroid.R;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import androidx.test.InstrumentationRegistry;

@RunWith(RobolectricTestRunner.class)
public class imageSize {

    private Context mockApplicationContext = RuntimeEnvironment.application;

    @Before
    public void setUp()
    {
        mockApplicationContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
    }

    @Test
    public void isMemoryAvailabletest()
    {
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeResource(mockApplicationContext.getResources(),
                R.drawable.disco_light, options);
        int width = options.outWidth;
        int height = options.outHeight;
        long dimension = width*height;
        long size_Required = (dimension * 32) / (8);

        long memory = 1;

        assertTrue(size_Required < memory);
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...