【问题标题】:android mapview slow and unresponsiveandroid mapview 缓慢且无响应
【发布时间】:2012-01-09 23:19:58
【问题描述】:

在我的应用中,mapview 在某些手机上效果很好,而在其他手机上效果很差。这似乎是一个 RAM 问题,即。具有大量内存和大量堆的手机运行良好且流畅,没有运行的手机则非常糟糕。

我正在回收位图并清理东西,但这似乎没有帮助。在应用程序开发过程中,某些手机会出现地图视图问题似乎有点随机,但现在似乎非常一致。

基本上在性能不佳的手机上,mapview 瓦片加载缓慢,应用程序的其他部分功能非常缓慢,而且 google 地图搜索不提供搜索建议或使用搜索到的地址更新地图。

在正常工作的手机上,mapview 瓦片加载速度很快,应用程序的其他部分运行速度非常快,谷歌地图搜索提供搜索建议,地图更新完全符合需要。

这是什么原因造成的,我将如何改进它? (这是标准的地图视图代码)

我看到一个类似的问题关于“android mapview is slow”,基本上是我的问题,但解决方案对我来说无关紧要,使用mapview的应用程序如何解决这个问题?

【问题讨论】:

  • 您是否只是因为图块加载缓慢或内存不足的问题?
  • 我认为它的内存不足,我必须重新打开调试
  • 但即使知道这一点,是否有可能使地图视图使用更少的内存?我没看到那个功能
  • 标签视图中有地图视图吗?
  • @Warpzit 是的,它在标签视图中。

标签: android android-mapview


【解决方案1】:

您是否查看过此错误报告(以及相关的解决方法):

http://code.google.com/p/android/issues/detail?id=2181

【讨论】:

  • 这正是我的问题,tabview 中的mapview。看起来还没有解决方法。那我可能得换成图片了。
【解决方案2】:

好吧,您实际上并没有提供任何代码,但是您是否认为问题可能与地图视图以外的其他东西有关?或者您是否考虑过也许您可以通过其他方式提高性能? 您对地图视图本身无能为力来提高性能。

您可以调查地图视图是否在没有覆盖的情况下变慢。我最近发现我的 itemizedoverlay 实现很糟糕,因为每次添加新项目时我都在添加项目并调用填充,而不是在添加完项目后调用填充。这在之前没有出现任何问题(没有选项卡布局),但是使用选项卡时它的工作速度非常慢。

您可以尝试的另一件事是摆脱带有活动的标签(我假设您现在这样做)并使用带有片段的标签。是的,这可以通过 mapview 来实现,只需 dl 众多 fragmentmapactivities 之一或制作您自己的 fragmentmapactivity。

【讨论】:

  • 奇怪的是,问题似乎出在地理编码器上。我用对 google 的在线 geocoder api 的 http get 请求替换了 android google geocoder,一切正常!
  • 奇怪,很高兴我能有所帮助:)
【解决方案3】:

将 mapView 设置为 Activity 的顶部视图会极大地提高您的性能。

MapView myMap = createMapView();

setContentView(myMap);

我什至会建议您在新活动中执行此操作。当然可以。

【讨论】:

    猜你喜欢
    • 2016-07-08
    • 2020-09-24
    • 1970-01-01
    • 2019-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    • 2015-10-16
    相关资源
    最近更新 更多