intent.getBooleanExtra вызывает java .lang.OutOfMemoryError - PullRequest
0 голосов
/ 04 августа 2020

У меня возникла проблема с intent.getBooleanExtra, которая вызывает исключение OutOfMemoryError.

Ошибка sh произошла на телефоне Android 5.0 (Asus ZenFone 2 ZE551ML) с более чем 1 ГБ свободной оперативной памяти и более 6 ГБ свободного места на диске.

Cra sh stack:

Fatal Exception: java.lang.OutOfMemoryError: int[] of length 2015679692 would overflow
       at android.util.ArrayMap.allocArrays(ArrayMap.java:198)
       at android.util.ArrayMap.ensureCapacity(ArrayMap.java:309)
       at android.os.BaseBundle.unparcel(BaseBundle.java:219)
       at android.os.BaseBundle.getBoolean(BaseBundle.java:658)
       at android.os.Bundle.getBoolean(Bundle.java:603)
       at android.content.Intent.getBooleanExtra(Intent.java:4781)
       at MyClass.onActivityCreated(MyClass.java:33)

А мой код выглядит так:

    @Override
    public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
        Intent intent = activity.getIntent();
        if (intent != null && !intent.getBooleanExtra(ActionIntent.MYCONSTANT, false)) {
        ....
        }
    }

Any Идея, почему я получил эту хрень sh, только с вызовом getBooleanExtra и с более чем 1 ГБ свободной оперативной памяти?

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