Google Map内存问题

时间:2018-09-06 04:46:21

标签: swift google-maps memory google-maps-sdk-ios gmsmapview

我正在一个项目中,我需要ViewController来显示 Google Map 来指示Property和许多其他对象(例如表视图和集合视图)的位置,以在同一视图控制器上显示JSON数据。

问题::该ViewController占用了大约72 MB的内存,当我调试代码以检查其占用大量内存的原因时,我观察到了Google Map。如果我删除了Google地图,那么它仅占用了15 MB的空间,但是,我创建了另一个视图控制器,在其中我只占用了UIView并为其提供了GMSMapView类型,而当我运行代码时,它占用了将近70 MB的内存。

这是谷歌地图的正常行为吗?由于我没有编写任何代码,只是将GMSMapView类型分配给UIView,这占用了大量内存。

我需要一种解决方案来减少此内存问题。在Google Map的情况下,有人可以建议我们该怎么做吗?

请注意:我尚未为Google MapView编写任何代码,只是将GMSMapView类型分配给UIView,并且内存跳转到接近70 MB或更高。

1 个答案:

答案 0 :(得分:0)

我在我的应用程序(在线出租车应用程序)中使用了它,我认为这很正常,但是为了减少内存使用量,您可以在viewController didDisappear出现时删除GMSMapView

override func viewDidDisappear(_ animated: Bool) {
        mapView.clear()
        mapView.removeFromSuperview()
        mapView = nil
       }

这会导致您的应用使用更少的内存