高德导航断网后恢复网络不重新规划路径问题及解决方案

简介: 高德导航断网后恢复网络不重新规划路径问题及解决方案

苹果客户端:用导航模块的应用,当到岔道口不按照规划路线行驶,断网3分钟以上,当网络恢复后切换到前台,导航地图上显示的路线是导航的起点到终点的导航路线,看到自己位置再动,但是偏航后不再重新规划路径,导航页面不再根据道路实际情况刷新,就是回到原来的规划路径也不再刷新导航页面。然后我们又手动调用导航过程中重新规划路线API,规划后导航路线的实际起点是进入导航的起点。一旦出现断网后并且右上角显示从无名道路进入很可能导航页面再也能正常刷新了。请问各位高手这种不以当前位置规划路径的现象,采用何种方法才能在这种情况下重新规划路径,需要调用什么接口。下面是出现问题时的截图:

哥终于找到解决方案了:

场景:

导航过程中,把应用切换到后台,断开网络3分钟,并且行驶的路径和原来规划路径不同,再恢复网络,把应用切换到前台,导航显示的路径还是断网前的路线不再重新规划,打电话时也有导航路径不重新规划问题重复。

原因分析:

导航过程中断网偏离原来的规划路径,当网络恢复后报错:2016/04/19 19:11:23:680 NavigationManager.m:-[NavigationManager naviManager:error:]:201 Debug:函数 error.code = -3

error.localizedDescription = 已有ViewController存在,请先执行dismissNaviViewControllerAnimated:方法取消展示

高德地图再也不重新规划路径了。

修改方案:

当发现错误码为-3的导航失败时开关导航就可以。

(void)naviManager:(AMapNaviManager )naviManager error:(NSError )error

{

FLDDLogDebug(@”函数 error.code = %ld\n error.localizedDescription = %@”,(long)error.code,[NSString stringWithFormat:@”%@”,error.localizedDescription]);

if((-3 == error.code) && (self.naviManager != nil))

{ [self.naviManager stopNavi]; [self.naviManager startGPSNavi]; }

}


高德导航地图2.1分模块处理后,解决断网不重新规划路径有所变化。

当断开网络期间偏离了路线需要重新规划路径时,由于没有网络导航规划无法返回。当网络恢复时,没有返回规划响应立即返回。这个版本规划失败返回的比系统网络正常通知还快,千万别判断网络状态再重新规划路径了,不然就不能立即重新导航了。失败时,返回错误码为2.

导航地图模块化后用到的常用地图库有:AMapFoundationKit.framework,AMapNaviKit.framework,AMapSearchKit.framework,MAMapKit.framework,AMapLocationKit.framework,iflyMSC.framework。

- (void)driveManager:(AMapNaviDriveManager *)driveManager onCalculateRouteFailure:(NSError *)error
{
    FLDDLogDebug(@"onCalculateRouteFailure:{%ld - %@}", (long)error.code, error.localizedDescription);
//    if((ReachableViaWiFi == [SingleAsyncSocket sharedInstance].networkStatus) || (ReachableViaWWAN == [SingleAsyncSocket sharedInstance].networkStatus) || (ReachableViaHaveNet == [SingleAsyncSocket sharedInstance].networkStatus))
//    {
//        if(([Singleton sharedInstance].loginOrderStat == LOGIN_ORDER_STATE_SUCESS) && (SOCKECT_CONNECT_SUCESS == [SingleAsyncSocket sharedInstance].socketConnectStat))
//        {
//            [self routeCalculate];
//        }
//    }
    [self routeCalculate];
}

//算路  含起点 终点
- (void)routeCalculate;
{
    self.startPoint = [AMapNaviPoint locationWithLatitude:[Singleton sharedInstance].latitudeAll longitude:[Singleton sharedInstance].longitudeAll];
    FLDDLogDebug(@"函数 _startLacation = %@\n _endLacation = %@",_startPoint,_endPoint);
    if((_startPoint == nil) || (_endPoint == nil))
    {
        return;
    }
    [self.driveManager stopNavi];
    [self routePlanAndStartNavi];
}

- (void)routePlanAndStartNavi {
    [self.driveManager calculateDriveRouteWithStartPoints:@[self.startPoint]
                                                endPoints:@[self.endPoint]
                                                wayPoints:nil
                                          drivingStrategy:self.drivingStrategy];
}
目录
相关文章
|
16天前
|
传感器 运维 物联网
蓝牙Mesh网络:连接未来的智能解决方案
蓝牙Mesh网络:连接未来的智能解决方案
98 12
|
2月前
|
监控 安全 网络安全
云计算与网络安全:技术、挑战与解决方案
【8月更文挑战第30天】随着云计算技术的飞速发展,越来越多的企业和个人开始将数据和应用迁移到云端。然而,云计算的普及也带来了一系列网络安全问题。本文将探讨云计算中的网络安全挑战,包括数据泄露、恶意软件攻击和服务中断等,并介绍一些常见的网络安全技术和最佳实践,如加密、访问控制和安全监控等。最后,我们将讨论如何制定有效的网络安全策略,以保护云服务免受威胁。
|
3月前
|
存储 安全 网络安全
云端防御策略:云计算时代的网络安全挑战与解决方案
【7月更文挑战第31天】随着云计算技术的迅猛发展,企业和个人越来越倚重云服务来处理和存储数据。然而,这种转变也带来了新的网络安全挑战。本文将深入分析云计算环境下的网络安全问题,并探讨如何通过先进的安全措施和技术来保护云基础设施免受威胁。我们将讨论从身份验证到入侵检测系统的一系列安全实践,以及如何利用加密技术来保障数据在传输和静态状态下的安全。
39 1
|
3月前
|
云安全 安全 网络安全
云端防御策略:在云计算时代保护网络安全的全新挑战与解决方案
随着云计算技术的飞速发展,企业和个人越来越依赖云服务来处理和存储数据。然而,这种转变也带来了新的安全威胁和隐私问题。本文将探讨云计算环境中特有的网络安全挑战,并介绍一系列创新的安全措施和技术,旨在加强云服务的安全性,确保数据的完整性和保密性。通过案例分析和最新技术趋势的讨论,我们旨在为读者提供深入理解并应对这些挑战的策略。
35 1
|
24天前
|
域名解析 弹性计算 云计算
【深度好文】中小企业上云,为什么做好网络架构规划很重要!
本文通过一位小微软件公司技术负责人的实际体验为始,引发了对大量小微企业上云架构实践的研究。 发现中小企业上云时,往往聚焦于业务测试和服务尽快上线,很难有精力投入在云上技术架构的规划和设计中。所以,大家云上的架构五花八门,很多架构缺乏长远规划,极可能给业务未来发展埋下隐患。 基于此,我们沉淀了一套《应用上云经典托管架构》,强调了上云架构规划对于业务的重要性,并带领大家理解了方案中的网络规划和架构设计全过程。 作为从事企业上云IT部门,或者初创事业的个人开发者们,都可以参考和了解。
|
2月前
|
存储 安全 网络安全
云计算与网络安全:技术挑战与解决方案
【8月更文挑战第31天】在数字化时代,云计算已成为企业和个人数据存储、处理和分析的首选平台。然而,随着其广泛应用,网络安全问题也日益凸显。本文将探讨云计算中的网络安全挑战,包括数据泄露、服务中断等风险,并介绍如何通过加密技术、身份验证和访问控制等手段来增强云安全。文章还将分享一些实用的代码示例,帮助读者更好地理解和应用这些安全措施。
|
2月前
|
安全 网络安全 云计算
云计算与网络安全:探索云服务的安全挑战与解决方案
【8月更文挑战第24天】在数字化转型的浪潮中,云计算作为一项关键技术,正推动着企业IT架构的革新。然而,随着云服务的广泛应用,网络安全问题也日益凸显,成为制约云技术发展的主要因素之一。本文将深入探讨云计算环境下的网络安全挑战,并结合最新的安全技术,提出有效的防护策略和解决方案。通过分析云服务模式、安全威胁及应对措施,旨在为读者提供一套完整的云计算网络安全指南。
|
2月前
|
网络协议 Linux 网络安全
遇到Docker容器网络隔断?揭秘六种超级实用解决方案,轻松让Docker容器畅游互联网!
【8月更文挑战第18天】Docker容器内网络不通是开发者常遇问题,可能因网络配置错、Docker服务异常或防火墙阻碍等原因引起。本文提供六种解决策略:确认Docker服务运行状态、重启Docker服务、检查与自定义Docker网络设置、验证宿主机网络连接、临时禁用宿主机IPv6及检查防火墙规则。通过这些步骤,多数网络问题可得以解决,确保容器正常联网。
113 1
|
2月前
|
开发者 图形学 API
从零起步,深度揭秘:运用Unity引擎及网络编程技术,一步步搭建属于你的实时多人在线对战游戏平台——详尽指南与实战代码解析,带你轻松掌握网络化游戏开发的核心要领与最佳实践路径
【8月更文挑战第31天】构建实时多人对战平台是技术与创意的结合。本文使用成熟的Unity游戏开发引擎,从零开始指导读者搭建简单的实时对战平台。内容涵盖网络架构设计、Unity网络API应用及客户端与服务器通信。首先,创建新项目并选择适合多人游戏的模板,使用推荐的网络传输层。接着,定义基本玩法,如2D多人射击游戏,创建角色预制件并添加Rigidbody2D组件。然后,引入网络身份组件以同步对象状态。通过示例代码展示玩家控制逻辑,包括移动和发射子弹功能。最后,设置服务器端逻辑,处理客户端连接和断开。本文帮助读者掌握构建Unity多人对战平台的核心知识,为进一步开发打下基础。
68 0
|
2月前
|
安全 网络安全 数据中心
下一篇
无影云桌面