Android mapview部分加载瓷砖

时间:2011-07-21 08:02:03

标签: android android-mapview mapactivity

我已经构建了一个具有单个mapview的android应用程序。

我有一个地图视图偶尔会丢失图块的错误。地图视图并非完全空白,而是显示某些图块但不是全部图块。此处的所有答案都与API密钥或在一个应用中拥有多个mapview的问题有关。这不是问题。

间歇性地发生,大约每五次一次我在清除应用程序中的所有数据后启动应用程序。因此它在新装置上的典型特征。

它只发生在Android 2.2设备上(三星Galaxy S肯定)

请注意日志显示:

07-21 17:11:52.274: INFO/MapActivity(25951): Handling network change notification:CONNECTED
07-21 17:26:25.629: ERROR/MapActivity(26064): Couldn't get connection factory client

当图块无法加载放大或缩小或重新启动时不会刷新图块。只有解决方案是转到设置 - >管理应用程序 - > [选择应用] - >清除数据然后重新启动应用。

之前有人见过这个,知道原因或解决方法吗?

干杯。

3 个答案:

答案 0 :(得分:2)

我猜你可以看到部分瓷砖,这可能是你的互联网连接问题。 检查您的互联网连接天气如果您尝试在模拟器中运行您的应用程序,请在模拟器中显示3G图标,否则请检查设备。

我发现了和你一样的问题,因为当我连接时显示地图的某些部分,经过一段时间我再次打开它,那时我没有上网所以我在地图上找到了部分瓷砖第一次。我已经连接到互联网并再次尝试然后我的问题解决了地图显示正常。

答案 1 :(得分:2)

建议

public class yourCustomMapView extends MapView{
    public abstract void invalidateDrawable (Drawable who){
        super.invalidateDrawable(who);
        //try to catch the error here:
        //My Guess is the following:
        if(who.getTransparentRegion!=null){
            //DO SOMETHING
            //You would delete the cache and reload
            //Try Reloading the image only
        }
    }
}

以编程方式删除缓存

这是更容易的部分。您将手动 删除与您的应用程序关联的所有数据库和文件。在删除之前,不要忘记关闭数据库和流到文件。如果您 清除缓存,则

答案 2 :(得分:0)

如果网络连接不正确,可能会发生这种情况。我的意思是如果网络提供商方面有任何问题。它也适合我。一段时间后运行应用程序。我希望它可以解决问题。