MapView
的getMap()
方法可能返回null。我知道这是Google有意为之的行为。
是否有人可以提供一个明确的描述,说明什么情况下以及在何种情况下getMap()
方法会返回null?
我知道如果给定设备上无法使用Google服务,getMap()
将返回null。这种情况已经相对较好地记录下来了。我更关心的是一种模糊的情况,即即使在设备上安装了Google服务,getMap()
仍然可能返回null。
到目前为止,我的假设是,在底层地图系统初始化期间,您的代码可能会执行并获取空地图。
我的假设正确吗?
是否有特定的Activity或Fragment生命周期的某个特定位置,我们可以确定地获取非空的GoogleMap
(如果我们假定已安装Google服务)?
我提出这个问题的目的是为了避免在我的代码中散布大量的if(mapView.getMap()!= null)
检查。此外,这个问题似乎仍然经常在StackOverflow上出现,我想看看我们能否弄清楚MapView
和getMap()
实际上发生了什么。