google-maps - 谷歌地图在 iOS7 中崩溃

标签 google-maps ios7

我们正在开发一个混合应用程序,并在我们的应用程序中使用谷歌地图 API。当我们尝试在 map 中加载 2000 个数据标记时,它崩溃了。 map 在IOS6、IOS5中不会崩溃。仅在 IOS7 中发生。是否对 ios7 应用程序进行了任何与内存相关的更改。

最佳答案

正如之前所说,iOS7 对内存使用更加严格。 此行为发生在 Chrome 等其他浏览器中,因此当应用程序达到内存使用上限时,就会出现崩溃。

我仅使用 Gmaps javascript API 和 jQuery 隔离了两个测试用例:

使用 100 个标记进行测试:一切正常

http://jsfiddle.net/edfFq/6/embedded/result

使用 3000 个标记进行测试:发生崩溃

http://jsfiddle.net/edfFq/7/embedded/result/

$(document).ready(function () {
    var map;
    var centerPosition = new google.maps.LatLng(40.747688, -74.004142);


    var options = {
        zoom: 2,
        center: centerPosition,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map($('#map')[0], options);


    for (var i=0;i<2800;i++){        
      var position = new google.maps.LatLng(40*Math.random(),-74*Math.random());
      var marker = new google.maps.Marker({
            position: position,
            map: map           
        });
    }
});

如果您的 map 使用标签、自定义图标和簇,则使用较少数量的标记可能会导致崩溃。

关于google-maps - 谷歌地图在 iOS7 中崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18759401/

相关文章:

google-maps - fitBounds 函数不显示所有标记

python - 如何缩短谷歌静态 map 的折线

javascript - Google map V3 -> 是否可以使用 lat lng 坐标或搜索框中的其他信息从 Geojson 获取属性?

ios - 在 iOS 7 中暂时隐藏状态栏

image - 从谷歌地图/地球保存高分辨率图像

android - 如何在谷歌地图中的折线上方添加文字?

ios - 在导航堆栈上使用一个 ViewController 启动

ios - 如何从锁定屏幕控制 AVPlayer 的播放和暂停。以及如何在锁定屏幕上设置应用程序图像

ios - 如何防止 UINavigationBar 在 iOS 7 中覆盖 View 顶部?

ios7 - CocoaPodsarm64问题