Gson toJson 转换 OutOfMemory(OOM)
Gson toJson convert OutOfMemory(OOM)
val gson = GsonBuilder().setPrettyPrinting().create()
Log.e("surveyListPretreatment",gson.toJson(
SurveyTab(viewModel.owner.treat).apply {
surveyListPretreatment = viewModel.surveyTabs.surveyListPretreatment
})
)
java.lang.OutOfMemoryError:无法分配 150994952 字节分配,其中 25165824 个空闲字节和 103MB 直到 OOM,最大允许占用空间 118228816,增长限制 201326592
因为,
DTO 有
var imgByteArray:ByteArray? = null //bitmap convert byteArray => It's OOM Generated...
我该如何解决?
Jake Wharton 已经在 GitHub Issues.
上对此发表了评论
There's no magic fix. You either need a larger heap or a smaller
object.
如果你能把你的物体变小,那将是最优的解决方案。如果您的应用确实需要那么多内存,您可以尝试在清单中为您的应用设置 android:largeHeap="true"
。
参考:
- http://developer.android.com/reference/android/R.styleable.html#AndroidManifestApplication_largeHeap
- Out of memory exception in gson.fromJson()
val gson = GsonBuilder().setPrettyPrinting().create()
Log.e("surveyListPretreatment",gson.toJson(
SurveyTab(viewModel.owner.treat).apply {
surveyListPretreatment = viewModel.surveyTabs.surveyListPretreatment
})
)
java.lang.OutOfMemoryError:无法分配 150994952 字节分配,其中 25165824 个空闲字节和 103MB 直到 OOM,最大允许占用空间 118228816,增长限制 201326592
因为,
DTO 有
var imgByteArray:ByteArray? = null //bitmap convert byteArray => It's OOM Generated...
我该如何解决?
Jake Wharton 已经在 GitHub Issues.
上对此发表了评论There's no magic fix. You either need a larger heap or a smaller object.
如果你能把你的物体变小,那将是最优的解决方案。如果您的应用确实需要那么多内存,您可以尝试在清单中为您的应用设置 android:largeHeap="true"
。
参考:
- http://developer.android.com/reference/android/R.styleable.html#AndroidManifestApplication_largeHeap
- Out of memory exception in gson.fromJson()