• 高德导航AMapNaviView线路规划失败?速来看看


      根据项目需求,需要地图页展示具体路线及自定义高德导航页面,

          接入过程中遇到线路规划失败的问题,接下来给大家讲解一下导航填坑之旅。

      使用场景如下:A页面为地图展示页(展示规划好的路线且当前车辆位置)

               B页面为实际自定义导航页

      原代码:

        进入 A 页面调用 AMapNavi.getInstance() 。
    
      此时候如果正确添加了AMapNaviListener 监听,会收到 initNaviSuccess 回调。
    
        进入B页面又调用 AMapNavi.getInstance()。
    
     由于 AMapNavi是单例对象,只在第一次创建对象的时候回调,此时并不会回调 initNaviSuccess。
    

       原因:因AMapNavi为单例对象,在A页面初始化后,在进入B页面时未销毁,同时在B页面又调用了初始化方法,此时不会回调initNaviSuccess。

      修正:

      方法1:在从A页面跳转到B页面之前,在A页面先调用 AMapNavi.destory(),此时 AMapNavi单例对象被销毁了。然后B页面再去初始化,此时在B页面能收到 initNaviSuccess 回调。

      方法2:将AMapNavi初始化提在BaseActivity中,因A页面和B页面同时一个订单及业务,对应规划的路线也是一致的,所以无需加以区分,直接在BaseActivity中初始化后,各个子页面都可直接调用。

     

      所以,当您的 initNaviSuccess 不回调时,请检查:

        1、是否在其他页面创建了 AMapNavi 对象。

        2、退出页面并未销毁 AMapNavi 对象。

     

      By:yzl

     

     

     

  • 相关阅读:
    python excel导入到数据库
    ubuntu14.04修改mysql默认编码
    python 向MySQL里插入中文数据
    hbase框架原理
    hive框架原理
    Hadoop的MapReduce模型基本原理
    机器学习模型效果评价
    spark架构原理
    Hadoop架构原理
    特征工程
  • 原文地址:https://www.cnblogs.com/widgetbox/p/13213879.html
Copyright © 2020-2023  润新知