【发布时间】:2011-12-20 14:32:25
【问题描述】:
我有一个 MapView,我在其中放置了一些 ca。 200 个叠加层,全部带有同一张图片。我使用 Restlet 获取位置数据。但这不应该是问题,因为我获得数据的速度足够快。
问题是,MapView 很慢。性能会随着叠加层的数量而下降,但它不应该,因为在 iPad 上,有一个应用程序可以轻松做到这一点。我的平板电脑的 Ghz 更高。 平板电脑一次又一次地加载地图的某些部分,即使我没有滚动它。
所以我认为我做错了什么。所以我有一些问题:
LogCat 说:
GC_CONCURRENT freed 287K, 6% free 7222K/7623K, paused 1ms+2ms并重复此操作,试图连续获得一些空间。是否有可能这是问题所在,缓存填充太多?Overlays 的阴影是否会花费很多性能?如何删除它们?
如何通过按返回按钮删除所有数据?我必须在
onStop()和onDestroy()中插入什么?据我所知,垃圾收集器会自动完成所有这些工作。我还能做什么?移除叠加层?-
我的用例如下:
minLatitude = (minLatitude > partnerLatitude) ? partnerLatitude : minLatitude;和每个:
for(BrunnerPartner partner: query) { partnerAL.add(partner); }这些对性能不利吗?
如果我在缩放跨度较小时隐藏一些叠加层会对我有帮助吗?我该怎么做?
【问题讨论】:
标签: android garbage-collection maps android-mapview overlays