【问题标题】:Map: GMS works, HMS dont; onMapReady not called地图:GMS 有效,HMS 无效; onMapReady 未调用
【发布时间】:2020-11-04 14:52:02
【问题描述】:

我在一个 android 项目中同时拥有 GMS 和 HMS。 GMS 版本有效,但 HMS 不调用 onMapReady 回调。这是代码:


    private var mMap: HuaweiMap? = null
    private var mapFragment: SupportMapFragment? = null

 private fun setMapFragment() {
        mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?
        mapFragment!!.getMapAsync(this)
        mapFragment!!.view!!.isClickable = false
    }

    override fun onMapReady(huaweiMap: HuaweiMap) {
        mMap = huaweiMap
        loadMap()
    }

我认为 GMS 和 HMS 的实现方式相同,但我想我错了。 HMS是否需要比GMS更多的权限或其他东西才能使其工作??

【问题讨论】:

    标签: android maps huawei-mobile-services gmsmapview huawei-developers


    【解决方案1】:

    此问题为已知错误,将于 2020 年 11 月 9 日修复。

    目前,可以使用解决方法:

    1. SupportMapFragement 更改为MapView
    2. 回滚 SDK 版本。

    【讨论】:

      【解决方案2】:

      确保您实现了 OnMapReadyCallback 还需要在调用 mapFragment!!.getMapAsync(this) 之前将 Bundle 传入 onCreate map 方法:

       val mapViewBundle: Bundle? = null
       mapFragment!!.onCreate(mapViewBundle)
       mapFragment!!.getMapAsync(this)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-11-21
        • 1970-01-01
        • 2020-08-06
        • 1970-01-01
        • 1970-01-01
        • 2020-05-15
        • 1970-01-01
        相关资源
        最近更新 更多