首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >toJson转换OutOfMemory(OOM)

toJson转换OutOfMemory(OOM)
EN

Stack Overflow用户
提问于 2020-02-04 14:32:39
回答 1查看 832关注 0票数 0
代码语言:javascript
复制
val gson = GsonBuilder().setPrettyPrinting().create()

Log.e("surveyListPretreatment",gson.toJson(
    SurveyTab(viewModel.owner.treat).apply {
        surveyListPretreatment = viewModel.surveyTabs.surveyListPretreatment
    })
)

java.lang.OutOfMemoryError:在OOM之前,未能分配150994952字节分配25165824个空闲字节和103 to,最大允许内存为118228816,增长限制为201326592。

因为,

DTO

代码语言:javascript
复制
var imgByteArray:ByteArray? = null //bitmap convert byteArray => It's OOM Generated...

我怎么才能解决呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-05 08:13:24

杰克·沃顿已经在GitHub问题上对此发表了评论。

没有神奇的解决办法。您要么需要更大的堆,要么需要更小的对象。

如果你能使你的对象更小,它将是最理想的解决方案。如果应用程序确实需要那么多内存,可以尝试在清单中为应用程序设置android:largeHeap="true"

参考资料:

  1. largeHeap
  2. gson.fromJson()中的内存不足异常
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60059601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档