【发布时间】:2014-02-04 06:57:40
【问题描述】:
我是来自韩国的安卓开发者
我的项目具有加载大量巨大位图(约 2,000 x 1,500 像素)的功能
我做了一些实验来比较 Asset 和 Drawable 之间的时间复杂度和空间复杂度
因此,Asset 在空间复杂度上优于可绘制。
当我使用 drawable 加载大图像时,我的应用因 OutOfMemoryException 崩溃:位图大小超出 VM 预算
但是当我使用 Asset 加载巨大的图像时,它工作正常!
有人知道发生这种情况的原因吗?
或者有人知道 Drawable 在 Android 框架中是如何工作的吗?一步步。
请帮忙。
感谢您的阅读。
【问题讨论】:
-
我不确定,但这可能是因为从资产中获取内容时,您直接管理流(无论是图像、声音还是其他),而使用 Drawable android 时尝试获取的图像可以有最大高度和宽度。
-
我认为[Android:从资产/可绘制文件夹访问图像][1] 你会得到答案。 [1]:stackoverflow.com/a/8400282/1839336
标签: android out-of-memory drawable assets