React-native: Exceção fatal: java.lang.OutOfMemoryError

Criado em 4 abr. 2016  ·  3Comentários  ·  Fonte: facebook/react-native

Meu aplicativo Android está usando o React Native 0.22.0, desenvolvido no Mac. Está tudo bem no desenvolvimento. Depois de liberar hoje, recebi relatórios de falhas do Crashlytics.

O relatório é

Fatal Exception: java.lang.OutOfMemoryError: Failed to allocate a 23103292 byte allocation with 13011316 free bytes and 12MB until OOM
       at dalvik.system.VMRuntime.newNonMovableArray(VMRuntime.java)
       at android.graphics.Bitmap.nativeCreate(Bitmap.java)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:942)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:913)
       at android.graphics.Bitmap.createBitmap(Bitmap.java:880)
       at com.facebook.imagepipeline.memory.BitmapPool.alloc(BitmapPool.java:55)
       at com.facebook.imagepipeline.memory.BitmapPool.alloc(BitmapPool.java:30)
       at com.facebook.imagepipeline.memory.BasePool.get(BasePool.java:259)
       at com.facebook.imagepipeline.platform.ArtDecoder.decodeStaticImageFromStream(ArtDecoder.java:137)
       at com.facebook.imagepipeline.platform.ArtDecoder.decodeFromEncodedImage(ArtDecoder.java:81)
       at com.facebook.imagepipeline.decoder.ImageDecoder.decodeStaticImage(ImageDecoder.java:127)
       at com.facebook.imagepipeline.decoder.ImageDecoder.decodeImage(ImageDecoder.java:94)
       at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder.doDecode(DecodeProducer.java:188)
       at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder.access$200(DecodeProducer.java:96)
       at com.facebook.imagepipeline.producers.DecodeProducer$ProgressiveDecoder$1.run(DecodeProducer.java:128)
       at com.facebook.imagepipeline.producers.JobScheduler.doJob(JobScheduler.java:207)
       at com.facebook.imagepipeline.producers.JobScheduler.access$000(JobScheduler.java:27)
       at com.facebook.imagepipeline.producers.JobScheduler$1.run(JobScheduler.java:78)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
       at com.facebook.imagepipeline.core.PriorityThreadFactory$1.run(PriorityThreadFactory.java:43)
       at java.lang.Thread.run(Thread.java:818)

Cerca de 50% dos usuários enfrentam esse problema. Realmente precisa ser corrigido.
screen shot 2016-04-05 at 3 55 46 am
screen shot 2016-04-05 at 3 56 04 am

Locked

Comentários muito úteis

android/app/src/main/AndroidManifest.xml

<application
  android:largeHeap="true"

Adicionando largeHeap parece corrigi-lo

Todos 3 comentários

O dispositivo está ficando sem memória, no primeiro caso está tentando alocar 22mb para um bitmap onde há apenas 12mb disponíveis. Você sabe quanta memória seu aplicativo estava alocando até a falha? porque pode ser um problema de vazamento de memória

Não notei nada de alarmante nos aplicativos que implantei no Android na Play Store recentemente. Você poderia fornecer mais informações aqui? Acredito que este é um assunto para um perfil adequado para que possamos ter uma ideia do que está acontecendo aqui.

android/app/src/main/AndroidManifest.xml

<application
  android:largeHeap="true"

Adicionando largeHeap parece corrigi-lo

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

jlongster picture jlongster  ·  3Comentários

despairblue picture despairblue  ·  3Comentários

axelg12 picture axelg12  ·  3Comentários

aniss picture aniss  ·  3Comentários

grabbou picture grabbou  ·  3Comentários