经过几天没有真正答案的搜索,我会来这里寻求帮助。
事实上,我们目前正在使用谷歌地图开发一个Android应用程序。
在某些情况下,我们需要使用不同的图标显示800个标记。
首先我们首先使用svg库创建我们的图标,直到那时没问题。
然后我们将Picture对象(由svg库返回的对象)转换为Bitmap,以在MarkerOptions对象上设置我们的图标。
但是如果我们显示我们的800个标记,然后删除它们并重复操作,一段时间后,应用程序崩溃并出现Out of Memory错误。
从地图中删除标记时,我们的标记对象列表始终为clear()。
我们保留MarkerOptions对象的列表,而不必再次重新生成图标。
所以我们尝试了几件事:
存储在Marker对象列表中以循环并设置为null所有对象,然后清除()列表
存储在MarkerOptions对象列表中以循环并设置为null所有对象,然后清除()列表
没有任何事情发生,一段时间后总会出现OutOfMemory的问题。
答案 0 :(得分:1)
添加这些行
android:largeHeap="true"
进入你的AndroidManifest文件。并将您使用的所有图标放入 drawable-nodpi 文件夹。
希望它能解决你的问题。