CN108027246B - 动态地集成地理应用中的离线和在线数据 - Google Patents

动态地集成地理应用中的离线和在线数据 Download PDF

Info

Publication number
CN108027246B
CN108027246B CN201680037923.1A CN201680037923A CN108027246B CN 108027246 B CN108027246 B CN 108027246B CN 201680037923 A CN201680037923 A CN 201680037923A CN 108027246 B CN108027246 B CN 108027246B
Authority
CN
China
Prior art keywords
navigation directions
navigation
offline
data
directions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680037923.1A
Other languages
English (en)
Other versions
CN108027246A (zh
Inventor
珍妮弗·毛雷尔
肖恩·川·温
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to CN202211080086.4A priority Critical patent/CN115479611A/zh
Publication of CN108027246A publication Critical patent/CN108027246A/zh
Application granted granted Critical
Publication of CN108027246B publication Critical patent/CN108027246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3679Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/3415Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3697Output of additional, non-guidance related information, e.g. low fuel level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/909Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096833Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/183Processing at user equipment or user record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Library & Information Science (AREA)
  • Navigation (AREA)

Abstract

接收对从源位置行进到目的地位置的导航指引的请求。使用在所述请求之前被存储在计算设备(12)的存储器(40)中的数据,生成从所述源位置行进到所述目的地位置的第一导航指引,并且将对从所述源位置行进到所述目的地位置的导航指引的请求传送到在线服务器(22)。在接收从所述源行进到所述目的地的第二导航指引之后,确定所述第一导航指引与所述第二导航指引之间的差是否超过阈值水平。当所述第一导航指引与所述第二指引路线之间的差不超过所述阈值水平时,将所述第二导航指引合并到所述第一导航指引。

Description

动态地集成地理应用中的离线和在线数据
技术领域
本公开涉及交互式数字地图,并且更具体地,涉及管理客户端设备中的离线地图数据。
背景技术
本文所提供的背景技术描述用于通常呈现用于本公开的上下文的目的。在该背景技术部分中描述的程度上,目前提名的发明人的工作以及可以不在提交时以其它方式限制为现有技术的描述的各方面既不明确地也不隐含地承认为针对本公开的现有技术。
提供交互式数字地图、显示驾驶指引并且支持各种地理功能(“地理应用”)的软件应用能够在各种用户设备上操作,包括桌面型计算机、膝上型计算机、平板计算机、智能电话、汽车导航***。在一些情况下,用户设备具有基本上永久的网络连接(诸如数字订户线(DSL)或电缆互联网连接)。在其它情况下,用户设备试图经由经受中断、服务质量中的波动、高价格(例如,漫游费用)等的无线通信信道访问网络服务器。
因此,地理应用不能总是访问网络服务器来服务用户请求。而且,虽然用户设备的操作***能够容易地识别关于无线连接性的问题中的一些,诸如当用户设备处于飞行模式时或者当无线服务提供商指定第二代(2G)能力而不是第三代(3G)连接性或更高时,其它连接性问题更难以检测并且可以是突然的,诸如当路由器或数据服务器看起来可用但是未能作出响应时,或者当用户当她离开热点时请求区域的数字地图时)。作为另一示例,当没有网络连接可用时,用户可以在她从地下车库驶出之前经由她的智能电话请求驾驶指引,并且智能电话在用户开始驾驶之后不久获得网络连接性。
发明内容
当可接受的质量的网络连接可用时,在用户设备诸如智能电话中操作的地理应用从在线模式中的远程服务器检索地图数据和各种类型的地理空间数据,并且还将某些地图数据和地理空间数据存储在设备中更多以便当用户设备在离线模式中操作时提供导航指引、地理搜索结果、地理建议等。地理应用因此支持这两个模式中的某些地理功能。为了使有限离线数据与更鲁棒的在线数据之间的转换好像是无缝的,当用户设备在在线模式与离线模式之间转换时,地理应用鉴于诸如在线数据的到达时间和已经可用的离线线路与到达在线数据之间的质量的差的因素动态地合并离线和在线数据。进一步地,鉴于到达时间、质量和可能地其它因素,在一些场景中地理应用动态地确定何时离线数据应该被显示给用户、何时在线正被请求的指示应该被显示给用户并且何时在线数据应该被显示给用户。
当提供关于潜在相关搜索结果的建议时,诸如当用户键入部分完整的搜索词项或位置名称时,地理应用能够鉴于能够多么精确地确定用户设备的当前位置来确定离线建议与(实际的或潜在的)在线建议之间的质量中的差异。例如,当用户设备的当前位置相对精确时,地理应用能够立即显示离线建议,但是当用户设备的当前位置不太精确时,地理应用可以首先试图获得在线建议、装备计时器,并且仅当计时器期满时显示离线建议。进一步地,地理应用可以鉴于可用的离线建议的数量确定是否应该立即显示离线建议(例如,单个离线建议可以与较高的相关概率相关联)。如果地理应用接收一个或多个在线建议并且当地理应用接收一个或多个在线建议时,如果在线数据是不同的和/或比当前被显示的离线数据更鲁棒的,地理应用可以提供用于将离线建议升级到新的在线建议的诸如按钮的控件。进一步地,当用户请求对大的类别(例如,“gas(气体)”、“French restaurants(法国餐馆)”)的建议时,地理应用能够自动地设定限制等待在线建议的更长的超时。
当用户请求导航指引时,在一些情况下,地理应用能够使用离线数据(“离线指引”限定一个或多个“离线路线”)立即生成导航路线并且将结果显示在数字地图(例如,或者逐步指令集)上。如果地理应用随后地从导航服务器接收导航数据(“在线指引”限定一个或多个“在线路线”),则地理应用能够以最小破坏方式经由用户接口提供更新,诸如通过提供用于作为备选路线查看在线指引的UI控件。当地理应用确定推荐的在线指引限定与离线指引相同的路线时,地理应用能够将交通数据合并到离线指引的呈现中。当地理应用确定推荐的在线指引与离线指引不同时,在用户选择在线路线中的一个之后,地理应用可以保持离线路线作为取消选择的备选方案,即使离线路线未对应于在线路线中的任一个。
地理应用还能够存储关于商家、兴趣点和用于呈现在离线模式中的其它地点的可用信息的子集。例如,地理应用能够存储商家的电话号码、营业时间、接收到的评级的数量和某个规模上的平均、地址,并且当可用时编辑总结(例如,更少的40个字符陈述)。如果地理应用随后地接收在线数据,则地理应用能够利用附加数据增加对应的列表,其能够包括更长的总结、评论文本、网站信息、街道影像、照片等。进一步地,当地理应用生成穿过没有可用的潜在相关离线地理空间数据的区域的离线路线时,地理应用能够生成适当的通知以便因此给定用户计划的机会。例如,地理应用可以指示如果用户偏离路线则地理应用将不能够生成备选和/或返回路线,或者地理应用将不能够提供关于沿着该路线的商家的信息。在沿着离线路线的导航期间,地理应用能够在区域的某个阈值距离内通知用户将接近没有离线地理空间数据的区域。指示还可以包括区域多长的指示。进一步地,地理应用能够在到达没有离线数据的区域之前建议用户可能希望添加到导航路线的地点的类别。例如,地理应用可以自动地在到达其中地理应用将不能够进行该类型的建议的区域之前提供用户在加油站处停止的建议。
附图说明
图1是根据本公开的技术的在其中客户端设备当服务对地理数据的请求时利用在线数据、离线数据和在线数据和离线数据的组合的示例***的框图;
图2是能够在图1的客户端设备上执行的地理应用中实现的用于使用在线数据和离线数据提供导航指引的示例方法的流程图;
图3A-3G图示了根据图2的方法的当提供导航指引时地理应用能够生成的示例屏幕截图中的一些;
图4是能够在图1的客户端设备中实现的用于使用在线数据和离线数据提供离线建议和搜索结果的示例方法的流程图;
图5A是能够在图1的客户端设备上执行的地理应用中实现的用于在导航之前提供离线路线穿过无可用离线数据的地理区域的指示的示例方法的流程图;
图5B是能够在图1的客户端设备上执行的地理应用中实现的用于在导航期间提供离线路线穿过无可用离线数据的地理区域的指示的示例方法的流程图;
图5C是能够在图1的客户端设备上执行的地理应用中实现的用于鉴于无可用离线数据的地理区域提供建议的示例方法的流程图,所述地理区域位于沿着当前所选择的导航路线;
图6A是当执行图5A的方法时地理应用能够生成的示例屏幕截图;
图6B和6C是当执行图5B的方法时地理应用能够生成的示例屏幕截图;
图7A-G是当执行图5C的方法时地理应用能够生成的示例屏幕截图;以及
图8是能够被实现在图1的客户端设备中的用于提供关于离线模式和在线模式中的地理地点的信息的示例方法的流程图。
具体实施方式
示例***和便携式设备的概述
参考图1讨论在其中能够实现上文概述的技术的示例***。
示例***10包括用户设备(或“计算设备”)12、地图数据服务器20、导航服务器22、和自动建议服务器23。取决于实施方式,用户设备12能够是例如智能电话、平板计算机、可穿戴计算设备、膝上型计算机、桌面型计算机、便携式导航设备等。用户设备12通常能够是便携式或非便携式的,并且能够是通用计算设备或专用(例如,嵌入式)设备,诸如在常规车辆或自动驾驶车辆的头部单元中操作的导航***。然而,为了便于说明,下面主要参考便携式用户设备讨论了用于提供导航指引和其它地理空间数据的技术。
用户设备12经由一个或多个通信网络18中的一个或多个连接耦合到服务器20、22和23,所述通信网络18能够是任何适合的局域网或广域网,包括WiFi网络、蓝牙网络、蜂窝网络诸如3G、4G、长期演变(LTE)、互联网等。用户设备12还能够经由通信网络18与附加的内容提供商、服务器等通信。在示例实施方式中,用户设备12可以是通过LTE网络连接到远程服务器诸如导航服务器22的智能电话。
地图数据服务器20、导航服务器22和自动建议服务器23被耦合到若干数据库,诸如存储图解和卫星数据的地图数据库30,图解和卫星数据存储街道和道路信息、地形数据、卫星影像等;地点页面数据库34,其存储商家时间、电话号码、电子邮件地址、网站链接、评论、商家特定的特定内容诸如各种商家的菜单等;以及交通数据库36,其包括当前交通状况,并且在一些实施方式中包括天气数据、道路关闭数据、估计时间数据等。一般而言,服务器20、22和23能够从任何数量的适合的数据库、web服务等接收与地理位置有关的信息,并且***10能够包括或者能够访问任何数量的附加服务器。
一个或多个操作者能够周期性地更新数据库30、34和36,其中,每个操作者在相应的时间间隔处向这些数据库提供更新。例如,流程数据库36可以存储基本实时的数据,然而图解和卫星数据库30可以相对不频繁地更新,诸如一周一次,并且能够例如当关于商家和其它地点的新信息变得可用时或者当***10接收到商家被关闭的指示时在ad hoc基础上更新地点页面数据34。
图解和卫星数据库30能够以光栅格式、向量格式、以任何其它适合的格式或其任何组合存储数据。在一些实施方式中,数据在多个缩放水平处被组织为地图图块(tile)以促进向客户端设备供应地图数据。取决于实施方式,导航服务器22能够例如在地图图块中将地图和指引数据分离地或一起提供到客户端设备。在其它实施例中,可以在与地图数据服务器20和导航服务器22分离的远程服务器上远程地生成地图数据和导航指引。而且,在一些实施例中,地图和导航指引可以由地图数据服务器20、导航服务器22和任何数量的附加服务器的组合生成。
在示例实施方式中,用户设备12包括存储器40、一个或多个处理器(CPU)50、图形处理单元(GPU)52、网络接口单元54、以及具有用于显示地图数据和指引的用户接口的I/O模块56。用户设备12还包括定位模块60,其能够是例如全球定位***(GPS)接收器。在一些实施例中,用户设备12可以将离线导航指引和/或在线导航指引传送到另一设备的用户接口上用于显示,诸如在车辆(未示出)的头部单元上。
存储器40能够是有形非暂时性存储器并且可以包括任何类型的适合的存储器模块,包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、其它类型的永久存储器等。存储器40存储操作***(OS)42和包括地理应用14的一个或多个应用或模块。操作***42可以是任何类型的适合的操作***,诸如例如现代智能电话操作***。例如,I/O模块56可以是触摸屏。更一般地,这些技术能够被实现在诸如膝上型计算机或桌面型计算机、汽车导航单元等的其它类型的设备中。
地理应用14使用向量图形数据、光栅图块或者任何其它适合的格式的地图数据生成数字地图以用于显示在屏幕上。如下面更详细讨论的,地理应用14能够生成在线指引和离线导航指引、使用在线数据和离线数据提供地理建议、动态地合并各种在线内容和离线内容等。取决于实施方式,地理应用14能够是由在操作***42直接地执行的编译指令组成的分离的可执行文件、采用诸如web浏览器的另一应用在运行时间处解译的脚本语言(或另一适合的格式)的指令、扩展另一软件应用的功能的插件等。在一个示例实施方式中,地理应用14是从web服务器下载到便携式计算设备12的“app”。而且,在一些实施方式中,地理应用14可以是web浏览器。
在操作中,地理应用14请求导航指引,并且取决于场景,请求包括来自导航服务器22的交通信息的补充数据。当用户12不能连接到网络18、网络连接性有限、网络连接具有不佳的质量、或者导航服务器以其它方式由于无线订阅的类型、距无线接入点的距离等而不可用时,地理应用14能够使用离线道路数据62本地生成导航指引。用户设备12还能够利用离线地理空间数据64和离线地点66,其示例在下文中被提供。
一般而言,离线数据62、64、66等能够包括用户设备12预期对该数据的后续用户请求而存储的数据。后续请求可以是明确的,诸如用户指定街道地址和激活对请求集中在指定的街道地址处的数字地图的控件。后续请求还能够是隐式的,诸如当用户明确地请求仅从源到目的地的导航指引,并且地理应用14还提供与沿途的感兴趣地点、加油站等有关的信息。在任一情况下,诸如离线数据62、64和66的离线数据能够对应于地理应用14基于地理应用14在稍后时间处将要求该数据的一定概率从服务器20、22等请求的地理/地理空间数据。地理应用14能够估计该概率并且鉴于这样的信号诸如用户的家庭和网络地址、用户的偏好、用户保存的位置、对由用户先前提交的导航指引的请求、网络覆盖信息(例如,当用户被期望以行进到没有网络覆盖或仅漫游网络覆盖的区域时)等做出特定数据选择。在一些实施例中,用户操作某些控件和/或安装某些应用以允许地理应用14使用这些信号并且存储这样的信息作为离线数据的一部分。
更特别地,离线道路数据62能够被存储在存储器40中实现的高速缓存中。取决于实施方式,离线道路数据62能够将这样的参数描述为道路几何形状(例如,路段长度)、交点的位置、和交点处的允许操纵(例如,从道路A到B上左转和右转可用、从道路B到A上仅右转可用)、道路类型信息(例如,州际公路、地方公路、地方街道)、允许的行进方向(例如,单向、双向)、速度限制数据等。而且,在一些实施方式中,离线道路数据62能够包括车道特定信息(例如,车道数、共乘(carpool)车道指示和其它车道特定限制)。离线道路数据62能够通常与地图数据库30中的道路数据相似,导航服务器22利用其生成导航指引。然而,在实施方式中的至少一些中,用户设备12未将可用的全部道路数据存储到导航服务器22。相反,用户设备12可以存储诸如例如用户的家庭附近的区域、用户的办公室附近的区域、沿着来自用户的家庭到她的办公室的路线的区域、流行位置周围的区域、由用户频繁地访问的位置周围的区域等的地点的离线道路数据。而且,离线道路数据62能够包括转变成不再直接地表示道路的数据结构中的道路/地图数据以辅助导航指引的高效计算。
在一些场景中,地理应用14可以决定高速缓存用户生活的整个城镇、城市、国家、州等的离线道路数据。在一些实施例中,为了用户利用这些技术的优点,用户可能需要选择设置和/或安装应用。一般而言,地理应用14能够鉴于诸如存储器的可用性、用户请求特定指引的估计概率、用户设备12失去网络覆盖的估计概率等,选择离线道路数据62的地理区域。进一步地,在地理应用14的一些实施方式中,用户可以手动地选择地理应用14应该高速缓存离线道路数据62的地理区域。
作为示例,地理应用14能够生成包括用于从第一位置行进到第二位置的逐步指令的导航指引。每个指令能够描述操纵(例如,左转、继续直行等)、用于呈现操纵的描述的时间(例如,在到达操纵点之前500英尺)、任何其它适合的导航信息、或其任何组合。在一些情况下,导航指引描述骑脚踏车者、步行者、乘汽车者等的操纵。当请求导航指引时,用户能够指定她是否正在驾驶、骑自行车、步行或者使用公共交通。地理应用14可以存储由用户设备12所选择的最后传输模式的指示,并且在一些实施方式中,使用该指示选择用于从服务器20和22和存储装置检索的数据作为离线道路数据22的一部分。
离线地理空间数据64能够包括诸如先前提交的地理搜索查询和对应的搜索结果、感兴趣地点的位置等的信息。离线地点页面数据66能够针对特定地点诸包括如营业时间、电话号码、所接收的评级的数量和这些评级的平均、特定有限长度的编辑总结等的信息。在实施方式中,特定地点的离线地点页面数据66是在地点页面数据库34中可用的数据的紧凑子集。在一些情况下,也离线存储可用在线数据。地理应用14能够使用与上文参考离线道路数据62所讨论的那些信号相似的信号选择离线地理空间数据64和离线地点页面数据66。将理解到图1仅示意性地图示了数据62、64和66的分离,并且用户设备12能够以任何适合的方式组织离线数据。
用于提供导航指引的示例技术
一般而言,地理应用14使用离线道路数据62在离线模式中提供导航指引,并且如果在线道路数据到达用户设备12并且当在线道路数据到达用户设备12时,地理应用14在可能时将在线数据无缝地合并到离线路线,或者将在线数据作为最佳选项呈现给用户。
在示例场景中,John从费城驾驶到纽约市。在停车时在John从地下车库驶出之前,他经由他的智能电话请求导航指引。由于智能电话不能成功地连接到无线网络,地理应用使用从他在费城与纽约之间的过往旅行存储的离线地图数据生成离线导航指引。很可能离线地图数据足以生成几何光学或者接近最优的路线;然而,John可以不具有准确的交通数据或对路线的好的时间估计。因此,地理应用可以继续尝试到达在线导航服务器。
当John开始跟随离线路线时,在某个点处智能电话找到可用的无线网络并且地理应用成功地到达在线导航服务器。在地理应用接收到限定一个或多个在线导航路线的在线导航数据之后,地理应用将在线导航数据与生成离线路线使用的离线导航数据相比较以便识别用户的中断的最低水平。特别地,地理应用能够生成差异度量,并且当差异度量在阈值/目标值/范围内时,地理应用利用交通信息更新离线路线以反映新信息。例如,John现在可能能够看到在他的当前位置前方高速公路二十英里处被堵塞。
参考图2和图3A-G的示例屏幕截图,用于使用在线导航数据和离线导航数据以一般地非破坏方式向用户提供导航路线的示例方法100。例如,方法100能够被实现在图1的地理应用14中。更一般地,然而,方法100能够被实现为可执行任何适合的设备或设备组的一个或多个处理器的指令集。
在块102处,接收将用户导航到指定目的地的请求。如在图3A中所图示的,例如,用户可以点击用于请求到在地图上选择并且利用地点指示符标记的位置的驾驶指引的按钮。在块104处,确定网络连接当前是否可用,并且如果是的话,则流程转到块106。否则,流程直接地转到块112。
如上文所指示的,在一些情况下,在实际不可用的情况下,网络覆盖可能看起来对便携式用户设备可用。在块106处,指示是显示在线导航数据正被检索。在图2B中图示了这样的界面的示例。计时器还能够在块106处开始以确定流程是否应该转换到块108或112。当离线导航数据可用时,在块106处开始的计时器能够是相对短的,诸如若干毫秒(并且甚至,在一些实施例中,能够被设定为零)。如果确定在计时器期满之前没有网络覆盖可用,则流程转到块112。
否则,计时器在块108处期满,并且执行方法100的地理应用能够确定用户是否先前已经指定任何路线选项,诸如例如“no tolls(没有通行费)”。然后,在块110处,使用离线导航数据生成离线路线。然而,这时候,能够显示地理应用将试图还检索在线数据的指示。图3C图示了连同在线数据的继续检索的指示符呈现的离线路线的示例屏幕。进一步地,能够在块110处开始计时器以确保用户不等待在线导航数据太久。该计时器能够被配置成例如在若干秒内期满。
如果在在线数据被接收之前计时器期满,则流程转到块112,其中,离线路线连同用于重新提交对在线导航指引的请求的可选择的选项被显示。在图3D图示了对应于块112的示例屏幕。否则,如果在线数据在计时器期满之前被接收,则流程转到块114。
在块114处,确定在线是否足够地接近于离线路线。为此目的,地理应用14可以将离线路线和在线路线中的每一个表示为沿对应路线以特定间隔隔开的路径点的集合,并且确定在在线导航指引与离线导航指引的集合之间不同的路径点的数量。例如,地理应用14可以确定离线导航指引具有与在线导航指引的集合9个共同路径点和2个不同的路径点。在一些实施例中,如果用户通过跟随逐转向的指引开始导航,则可以丢弃已通过的路径点,然而将到来的路径点可以更重地加权。例如,如果离线导航指引具有与在线导航指引的集合共同的5个路径点和不同的5个路径点,但是用户已通过不同的路径点中的2个,并且共同的路径点中的2个非常接近于用户,那么数字导航模块44可以确定在线导航指引与离线导航指引之间的差的度量是小的。
如果路线不足够相似,则在块118处,生成新可用的在线路线的指示符,连同用于激活如在图3E中所图示的在线路线的显示的控件。以这种方式,在没有不期望地失去离线路线的情况下,用户能够当方便时切换到典型地更好的在线路线。在块116处,如果路线足够相似,则可以将在在线路线中可用的交通信息和从离线路线丢失的其它在线数据合并到离线路线。
如在图3F中所图示的,除主要路线之外,地理应用能够显示一个或若干个备选路线。即使离线路线的质量对于备选的列表不是足够高的,也可以将先前呈现的离线路线呈现为备选选项中的一个。以这种方式,地理应用确保在线模式与离线模式之间的无缝转换。
为了进一步清晰,图3G图示了地理应用可以响应于用户点击、或者以其它方式选择例如图3D的屏幕中所提供的离线导航路线而生成的屏幕。在该情况下地理应用可以继续呈现离线数据将生成路线的指示。在该示例中屏幕的剩余部分由数字地图上的导航路线的更详细重叠占用。
如果在块108处路线选项成功地被确定,并且如果地理应用不能完全地容纳这些路线选项,则可以生成适当的警告。例如,地理应用可以指示离线路线可能包含通行费。
该章节中所讨论的技术的一个示例实施方式是用于提供导航指引的计算设备中的方法。方法包括:(i)接收对从源位置行进到目的地位置的导航指引的请求;(ii)使用在请求之前被存储在计算设备的存储器中的数据使用一个或多个处理器生成对从源位置行进到目的地位置的第一导航指引;(iii)使用一个或多个处理器将对从源位置行进到目的地位置的导航指引的请求传送到在线服务器;(iv)从在线服务器接收对从源行进到目的地的第二导航指引;(v)使用一个或多个处理器确定第一导航指引与第二导航指引之间的差是否超过阈值水平;以及(vi)当第一导航指引与第二指引路线之间的差不超过阈值水平时,将第二导航指引合并到第一导航指引。
在一些实施方式中,该方法包括以下特征中的一个或多个。确定第一导航指引与第二导航指引之间的差包括将第一导航指引和第二导航指引中的每一个表示为相应的路径点集合,并且将第一集合与第二集合相比较来确定两个集合相对于在第一集合和第二集合的大小有多少共同路径点。该方法包括连同第二导航指引接收交通数据,并且将第二导航指引合并到第一导航指引包括将交通数据添加到第一导航指引。
这些技术的另一实施方式是计算设备,其包括一个或多个处理器、用户接口以及存储由一个或多个处理器可执行以实现以上方法的指令的非暂时性计算机可读存储器。
用于提供建议和搜索结果的示例技术
地理应用14能够支持搜索并且建议在线模式或离线模式中的功能性。在在线模式中,地理应用14能够将部分完整的字符串提供到自动建议服务器23并且接收与部分完整的字符串一致的搜索结果。在离线模式中,地理应用14能够将部分完整的字符串与离线地理空间数据相比较来识别与该输入一致的一个或多个结果。这些结果能够作为建议被提供到用户。当将离线结果和在线结果显示为建议时,地理应用14能够提供视觉指示符以向用户指示结果是从网络服务器接收哦或使用离线数据生成的。
为了高效地并且以直观方式向用户提供地理建议,地理应用14能够立即或在小的超时期满时显示离线建议,与上文所讨论的方法100类似。因此,用户能够当等待在线建议时查看离线建议。
如果在线数据到达并且当在线数据到达时,地理应用14能够识别结果中的重复。在一些情况下,重复在线包含更多信息。例如,在线结果能够包括本国语言和用户的语言二者中的地点的拼写,然而离线结果能够包括拼写中的仅一个。地理应用14能够在不多于一次列出该结果的情况下利用该附加信息增加离线结果。而且,地理应用14可以以相关性的递减次序排列结果,例如,在不重新排列已经显示的离线搜索结果(即使这些搜索结果排名相对低)的情况下,以便防止数据在屏幕上“跳来跳去”。
离线结果或建议能够包括高质量结果以及低质量结果。典型地,对于高质量结果而言,在离线地理空间数据64中大量的信息可用。在一些情况下,高质量离线搜索结果基本上具有与在线搜索结果相同的质量。低质量结果能够包括比高质量离线搜索结果的显著较少的信息。如上文所指示的,特定结果可以与仅部分信息一起存储。进一步地,搜索结果的累积可以由这些结果是否对应于高匹配概率——诸如当用户键入的位置的名称仅匹配离线地理空间数据64中包括的一个结果、或低匹配概率——诸如当部分完整的字符串与多个离线结果一致(因此很有可能用户不希望看到这些结果中的大多数)。
地理应用14能够实现时间延迟与质量改进之间的一定权衡。特别地,图4图示了用于当地理应用14显示高质量离线建议、低质量离线建议和在线建议的混合时提供离线建议和搜索结果的示例方法300。方法300在块302处开始,其中如上文所讨论的,显示搜索结果/建议的混合。用户然后选择结果中的一个,其可以是在线结果或具有高或低质量的离线结果。
如果高质量离线结果被选择,则流程转到块304和306,其中,发送对在线数据的后台请求并且显示离线数据。例如,在用户键入“Mag”时,地理应用14将“Magnolia Café”的标头显示为高质量离线建议,并且在块306处,显示可用离线信息的剩余部分。由于在后台发送请求,在该实施方式中的地理应用14不提供在线请求的指示以不阻止用户查看在线数据。可用离线信息能够包括简单回顾、平均评级、评级数量、营业时间等。如果随后接收在线数据,则地理应用14能够提供用于显示在线数据的UI控件。
如果低质量离线结果被选择,则流程首先转到块320,其中,发送出对在线数据的请求。在这种情况下,地理应用14可以将未决的在线请求的指示提供到用户。类似地,如果在线结果被选择,则流程也首先转到块320。
在块322处,可以针对低质量离线结果设定相对短的超时T1(例如,2秒)。针对在线结果,在块324处,可以设定更长的超时T2(例如,7秒)。如果在相应的时间间隔内接收在线数据,则在块340处显示在线数据。否则,在超时T1或T2期满或者在线请求失败时,流程转到块326,其中,显示低质量离线结果。
然后,在块328处,与块304处类似,发送出对在线数据的后台请求。如果当正显示低质量离线结果时在线数据最终到达,则在块330处提供用于显示在线数据的UI控件。在将该控件激活时,流程转到块340。
该章节中所讨论的技术的一个示例实施方式是用于提供与部分录入的用户输入一致的建议的计算设备中的方法。方法包括:(i)经由计算设备的用户接口接收对应于由用户录入的搜索词项的一个或多个第一字符的部分输入;(ii)使用一个或多个处理器自动地提供与部分输入一致的多个建议,包括(a)使用存储在计算设备的存储器中的离线数据生成的高质量离线建议,(b)使用存储在存储器中的离线数据生成的低质量建议,其中,高质量离线建议包括大于特定阈值的数据量,并且低质量离线建议包括小于阈值的数据量,和(c)从在线服务器接收到的在线建议;(iii)当接收高质量离线建议的选择时,提供对应于高质量离线建议的离线数据;或者(iv)当接收低质量离线建议或在线建议的选择时(a)请求对应的在线数据和(b)在计时器期满时显示对应于建议的低质量离线数据。
在一些实施方式中,该方法包括以下特征中的一个或多个。如果低质量建议被选择,则使用第一超时值,并且如果在线建议被选择,则使用第二超时值,其中,第二超时值大于第一超时值。当高质量离线建议被选择时,方法包括请求在线数据作为后台任务。
这些技术的另一实施方式是计算设备,其包括一个或多个处理器、用户接口以及存储由一个或多个处理器可执行以实现以上方法的指令的非暂时性计算机可读存储器。
用于提供对无离线数据覆盖的即将到来的区域的指示的示例技术
如上文所指示的,在一些情况下,地理应用14可以生成离线路线穿过无可用潜在相关离线地理空间数据的区域的指示。然后参考图5A-7G讨论了在这样的情况下地理应用14的示例操作。图5A-C的方法中的每个方法能够被实现在地理应用14或者更一般地作为单个设备或设备组的一个或多个处理器上可执行的指令集。
首先参考图5A,方法400用于在导航之前提供离线路线穿过无可用离线数据的地理区域的指示。在块403处,获得离线路线。即使当能够针对离线路线生成离线路线的几何形状和逐步指引时,离线地理空间数据64和离线地点页面数据66(参见图1)可能不包括与离线路线的特定部分相关的任何数据。而且,离线路线可能穿过除已经被包括在离线路线中的部分外无可用离线道路数据。如果在块404处确定离线路线穿过无可用离线数据的区域,则流程转到块406。否则,流程转到块410,其中,使用离线的导航能够在从用户接收到适当的命令时开始。
在一些情况下,方法400能够与无离线数据的区域类似地识别仅存储有限数据的区域。例如,有限数据可以缺少与主要功能区域有关的信息,诸如例如搜索、用于显示数字地图的地图数据、或者指引。作为更特定示例,对于某个区域而言,仅存储低分辨率地图数据,或者仅主要公路用于导航,然而对于与导航路线有关的大部分或全部其它区域、存储高分辨率地图数据和公路连同较小的道路用于导航。在一些情况下,路线和数字地图生成可能在离线模式中完全功能,但是搜索可能不可用。在其它情况下,路线可能不可用。
在块406处,例如,生成具有离线数据的区域和无离线数据的区域的可视化,如在图6A中所图示的。在块408处,显示关于与无离线数据的区域相关联的限制的警告。例如,地理应用14能够将地图上的无离线数据的区域变灰,并且向用户显示如果用户偏离离线路线则地理应用14可能不能够路由用户返回的警告。警告可以特定于离线数据的限制。在从用户接收到确认时或者在超时期满时,流程转到块410以开始离线导航。
在导航期间,地理应用14能够执行用于提供离线路线穿过无可用离线数据的地理区域的指示的示例方法450,如在图5B中所图示的。
在块453处,地理应用14通过移动数字地图上的当前位置的指示符、显示文本逐步指令、以音频格式宣告指令等,沿着离线路线导航用户。在块454处,确定无离线数据的区域在用户的当前位置的N英里(例如,5英里)内。如果无离线数据的区域沿着离线路线比M英里(例如,10英里)更长,则可以提供关于区域的警告。特别地,如在图6B中所图示的,可以显著地显示指定到区域的边界剩余的距离、区域的大小等的消息。进一步地,可以以例如变灰区域的形式在数字地图上提供图形指示。在其它场景中,该警告(以及本公开的其它警告和消息)可以听觉地或以触觉方式(例如,通过振动信号)提供。当用户驾驶通过无离线覆盖的区域时,导航可以显得“正常”,但是地理应用14能够继续显示无离线数据可用性的指示符,例如如在图6C中所图示的。
进一步地,图5C是用于鉴于无可用离线数据的地理区域提供建议的示例方法480的流程图,所述地理区域位于沿着当前所选择的导航路线。
在块482处,地理应用14沿着离线路线导航用户,如在图7A中所图示的。然后,在块484处,确定无离线数据的区域在当前位置的N英里内。在块486处,提供建议类别诸如食品或汽油作为可选择的选项,如在图7B中所图示的。更特别地,地理应用能够向用户建议她在进入其中地理应用14不能向用户提供任何附加信息的区域之前得到汽油或食品。如果在块477处用户选择类别,则流程转到块490。否则,流程转到块486,其中,可以选择新类别。
在块490处,建议所确认的类别内的地点,如在图7C中所图示的。如果用户选择这些地点中的一个,则在块492处地点被添加到路线,如在图7D中所图示的。该临时目的地可以被显示在地图上,如在图7E中所图示。在块494处导航恢复,如在图7F中所图示的。当用户到达无离线数据的区域时,可以在地图上提供适当的指示符,如在图7G中所图示的。
本章节中所讨论的技术的一个示例实施方式是用于当沿着离线路线导航用户时通知用户即将到来的丢失离线数据覆盖的计算设备中的方法。方法包括:(i)接收对从源位置行进到目的地位置的导航指引的请求;(ii)使用在请求之前被存储在计算设备的存储器中的数据,使用一个或多个处理器生成对从源位置行进到目的地位置的导航指引,导航指引限定离线导航路线;(iii)使用一个或多个处理器确定离线导航穿过计算设备的存储器未存储离线数据或者仅存储与沿着导航路线布置的地点有关的有限数据的至少某个大小的区域;(iv)响应于确定计算设备在区域的界限的某个阈值距离内,经由计算设备的用户接口自动地提供与区域有关的通知。
在一些实施方式中,该方法包括以下特征中的一个或多个。方法包括自动地建议特定商家类别以在到达所述区域之前搜索。特定类别可以是例如加油站。方法包括生成无离线数据或者仅有限数据的区域相对于被显示在数字地图上的其它区域的可视化。
这些技术的另一实施方式是计算设备,其包括一个或多个处理器、用户接口以及存储由一个或多个处理器可执行以实现以上方法的指令的非暂时性计算机可读存储器。
用于在不同的模式中提供地点信息的示例技术
参考图8,用于提供关于离线模式和在线模式中的地理地点的信息的示例方法700还能够被实现在地理应用14或另一适合的软件模块中。
方法700在块702处开始,其中,紧凑信息被存储对特定地点以对由离线模式中的后续使用。如上文所讨论的,对地点的紧凑信息能够包括在地点页面数据库34处可用的数据的子集,诸如商家的电话号码、营业时间、所接收的评级的数量和某个规模上的平均、地址、以及当可用时编辑总结。
在块704处,响应于查询或自动地作为建议的一部分在离线模式中显示紧凑信息。在块706处,接收与地点有关的在线数据,并且在块708处,接收到的在线数据与离线数据合并。在块710处,显示合并数据。例如,如上文所讨论的,搜索结果可以被显示在列表上的相同位置中,但是可以添加地点的外语拼写。如果用户已经拉起显示地点的有限或紧凑信息的信息卡,则地理应用14可以将在线数据选择性地合并到信息板。例如,地理应用14现在可以显示用于升级结果的显示的控件,如果不需要对已经显示的数据的重新排列,则可以在底部添加附加墨水、图像等。
该章节中所讨论的技术的一个示例实施方式是用于提供关于商家的信息的计算设备中的方法。方法包括:(i)在计算设备处从在线服务器接收与地理定位的地点有关的完整信息;(ii)将完整信息的子集存储在计算设备的存储器中;(iii)随后地经由计算设备的用户接口提供接收到的信息的所存储的子集;(iv)从在线服务器接收与地理定位的地点有关的完整信息;(v)将完整信息与完整信息的子集合并;以及(vi)经由用户接口显示合并信息。
附加考虑
以下附加考虑适用于前述讨论。贯穿本说明书,多个实例可以实现如单个实例所描述的部件、操作或者结构。尽管一个或多个方法的单独的操作图示并且描述为分离的操作,但是可以同时执行单独的操作中的一个或多个,并且不要求以所图示的顺序执行操作。呈现为示例配置中的分离的部件的结构和功能性可以被实现为组合的结构或者部件。类似地,如单个部件所呈现的结构和功能性可以被实现为分离的部件。这些和其它变型、修改、添加和改进落在本文中的主题的范围内。
特定实施方式在本文中被描述为包括逻辑或若干部件、模块或机构。模块可以构成软件模块(例如,编码在机器可读介质上或者传输信号中的代码)或硬件模块。硬件模块是能够执行特定操作的有形单元并且可以以某种方式配置或者布置。在示例实施例中,一个或多个计算机***(例如,独立式、客户端或者服务器计算机***)或者计算机***的一个或多个硬件模块(例如,处理器或者一组处理器)可以通过软件(例如,应用或者应用部分)被配置为操作以执行如本文所描述的特定操作的硬件模块。
除非另外特别声明,以其它方式使用诸如“处理”、“计算(computing)”、“计算(calculating)”、“确定”、“呈现”、“显示”等等的词语的本文中的讨论可以是指操纵或者变换表示为一个或多个存储器(例如,易失性存储器、非易失性存储器或者其组合)、寄存器或者接收、存储、传送或者显示信息的其它机器部件内的物理(例如,电子、磁性或者光学)量的数据的机器(例如,计算机)的动作或者过程。
如本文所使用的,对“一个实施方式”或“实施方式”的任何引用意指结合该实施方式所描述的特定元件、特征、结构或特性被包括在至少一个实施方式中。说明书中的各个地方出现的短语“在一个实施方式中”不一定全部是指相同实施方式。
可以使用表达“耦合”和“连接”连同其衍生词描述一些实施方式。例如,可以使用术语“耦合”来描述一些实施方式以指示两个或两个以上元件直接物理或者电气接触。然而,术语“耦合”还可以意指两个或两个以上元件彼此不直接接触,但是仍然彼此协作或者交互。实施方式不限于该语境。
如本文所使用的,术语“包含”、“包括”、“具有”或者其任何其它变型旨在涵盖非排他性包括。例如,包括元件的列表的过程、方法、制品或装置不必限于仅那些元件而且可以包括未明确地列出或这样的过程、方法、制品或装置固有的其它元件。而且,除非明确声明相反,否则“或”是指包括性或而不是排他性或。例如,通过以下各项中的任一项,满足条件A或B:A是真(或存在)并且B是假(或不存在),A是假(或不存在)并且B是真(或存在),并且A和B二者均是真(或存在)。
另外,“一(a/an)”的使用被用于描述本文中的实施方式的元件和组件。这仅出于方便并且给定各种实施方式的一般意义。该描述应该被理解为包括一个或至少一个,并且除非显然并非如此,否则单数还包括复数。
在阅读本公开时,本领域的普通技术人员还将理解用于通过本文所公开的原理将在线地理空间建议与离线地理空间建议合并的附加替选结构和功能设计。因此,虽然已图示并且描述特定实施方式和应用,但是应理解到所公开的实施方式不限于本文所公开的精确构造和部件。可以在本文所公开的方法和装置的布置、操作和细节中做出对于本领域的技术人员明显的各种修改、改变和变型。

Claims (18)

1.一种用于提供导航指引的计算设备中的方法,所述方法包括:
接收对从源位置行进到目的地位置的导航指引的请求;
由一个或多个处理器使用在所述请求之前存储在所述计算设备的存储器中的数据,生成从所述源位置行进到所述目的地位置的第一导航指引;
使用一个或多个处理器,将对从所述源位置行进到所述目的地位置的导航指引的请求传送到在线服务器;
从所述在线服务器接收从所述源位置行进到所述目的地位置的第二导航指引,包括接收交通数据;
使用一个或多个处理器确定所述第一导航指引与所述第二导航指引之间的差是否超过阈值水平;以及
当所述第一导航指引与所述第二导航指引之间的所述差不超过所述阈值水平时,将所述第二导航指引合并到所述第一导航指引,包括将所述交通数据添加至所述第一导航指引,其中,所述第一导航指引在等待从所述在线服务器接收所述第二导航指引时在超时期满时显示给用户,以及
当所述第一导航指引与所述第二导航指引之间的所述差超过所述阈值水平时,经由用户接口提供所述第二导航指引。
2.根据权利要求1所述的方法,其中,确定所述第一导航指引与所述第二导航指引之间的所述差包括:
将所述第一导航指引和所述第二导航指引中的每一个表示为相应的路径点集合,以及
将第一集合与第二集合相比较,以确定该两个集合相对于所述第一集合和所述第二集合的大小有多少共同路径点。
3.根据权利要求2所述的方法,其中,将所述第一集合与所述第二集合相比较包括:向接近于所述计算设备的当前位置的路径点指派比不接近于所述计算设备的所述当前位置的路径点更大的权重。
4.根据权利要求1所述的方法,还包括:连同所述第一导航指引一起,显示正从所述在线服务器检索导航指引的指示。
5.根据权利要求1所述的方法,还包括:在生成所述第一导航指引之前确定先前设定的路线选项,并且其中,生成所述第一导航指引包括:应用所述先前设定的路线选项。
6.根据权利要求1所述的方法,其中,经由所述用户接口提供所述第二导航指引包括:
将所述第一导航指引呈现为主要路线,以及
将所述第二导航指引提供为可选择的备选方案。
7.根据权利要求1所述的方法,还包括:
当所述第二导航指引不可用时,经由所述用户接口呈现所述第一导航指引;
使用一个或多个处理器,确定所述第一导航指引限定穿过至少一定大小的区域的路线,针对所述至少一定大小的区域,所述计算设备的所述存储器没有存储离线数据或仅存储与沿着所述路线布置的地点有关的有限数据;以及
响应于确定所述计算设备在所述区域的界限的阈值距离内,经由所述用户接口自动地提供与所述区域有关的通知。
8.根据权利要求7所述的方法,还包括:经由所述用户接口,在到达所述区域之前,自动地建议商家类别以供搜索。
9.根据权利要求7所述的方法,进一步提供所述区域的大小的指示。
10.一种计算设备,包括:
一个或多个处理器,
用户接口;以及
非暂时性计算机可读存储器,其存储可由所述一个或多个处理器执行的指令,所述一个或多个处理器被配置成实现包括以下的方法:
接收对从源位置行进到目的地位置的导航指引的请求,
使用在所述请求之前存储在所述存储器中的数据,生成从所述源位置行进到所述目的地位置的第一导航指引,
将对从所述源位置行进到所述目的地位置的导航指引的请求传送到在线服务器,
从所述在线服务器接收从所述源位置行进到所述目的地位置的第二导航指引,包括接收交通数据,
确定所述第一导航指引与所述第二导航指引之间的差是否超过阈值水平,以及
当所述第一导航指引与所述第二导航指引之间的所述差不超过所述阈值水平时,将所述第二导航指引合并到所述第一导航指引,包括将所述交通数据添加至所述第一导航指引,其中,所述第一导航指引在等待从所述在线服务器接收所述第二导航指引时在超时期满时显示给用户,以及
当所述第一导航指引与所述第二导航指引之间的所述差超过所述阈值水平时,经由所述用户接口提供所述第二导航指引。
11.根据权利要求10所述的计算设备,其中,确定所述第一导航指引与所述第二导航指引之间的所述差包括:
将所述第一导航指引和所述第二导航指引中的每一个表示为相应的路径点集合,以及
将第一集合与第二集合相比较,以确定该两个集合相对于所述第一集合和所述第二集合的大小有多少共同路径点。
12.根据权利要求11所述的计算设备,其中,将所述第一集合与所述第二集合相比较包括:向接近于所述计算设备的当前位置的路径点指派比不接近于所述计算设备的所述当前位置的路径点更大的权重。
13.根据权利要求10所述的计算设备,其中,所述方法还包括:连同所述第一导航指引一起,显示正从所述在线服务器检索导航指引的指示。
14.一种存储指令的非暂时性计算机可读存储器,所述指令当由一个或多个处理器执行时,使得所述一个或多个处理器实现包括以下的方法:
接收对从源位置行进到目的地位置的导航指引的请求;
由一个或多个处理器使用在所述请求之前存储在所述计算设备的存储器中的数据,生成从所述源位置行进到所述目的地位置的第一导航指引;
使用一个或多个处理器,将对从所述源位置行进到所述目的地位置的导航指引的请求传送到在线服务器;
从所述在线服务器接收从所述源位置行进到所述目的地位置的第二导航指引,包括接收交通数据;
使用一个或多个处理器确定所述第一导航指引与所述第二导航指引之间的差是否超过阈值水平;以及
当所述第一导航指引与所述第二导航指引之间的所述差不超过所述阈值水平时,将所述第二导航指引合并到所述第一导航指引,包括将所述交通数据添加至所述第一导航指引,其中,所述第一导航指引在等待从所述在线服务器接收所述第二导航指引时在超时期满时显示给用户,以及
当所述第一导航指引与所述第二导航指引之间的所述差超过所述阈值水平时,经由用户接口提供所述第二导航指引。
15.根据权利要求14所述的非暂时性计算机可读存储器,其中,确定所述第一导航指引与所述第二导航指引之间的所述差包括:
将所述第一导航指引和所述第二导航指引中的每一个表示为相应的路径点集合,以及
将第一集合与第二集合相比较,以确定该两个集合相对于所述第一集合和所述第二集合的大小有多少共同路径点。
16.根据权利要求15所述的非暂时性计算机可读存储器,其中,将所述第一集合与所述第二集合相比较包括:向接近于所述计算设备的当前位置的路径点指派比不接近于所述计算设备的所述当前位置的路径点更大的权重。
17.根据权利要求14所述的非暂时性计算机可读存储器,其中,所述方法还包括:连同所述第一导航指引一起,显示正从所述在线服务器检索导航指引的指示。
18.根据权利要求14所述的非暂时性计算机可读存储器,其中,所述方法还包括:在生成所述第一导航指引之前确定先前设定的路线选项,并且其中,生成所述第一导航指引包括:应用所述先前设定的路线选项。
CN201680037923.1A 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据 Active CN108027246B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211080086.4A CN115479611A (zh) 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562167885P 2015-05-28 2015-05-28
US62/167,885 2015-05-28
PCT/US2016/034632 WO2016191674A1 (en) 2015-05-28 2016-05-27 Dynamically integrating offline and online data in a geographic application

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202211080086.4A Division CN115479611A (zh) 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据

Publications (2)

Publication Number Publication Date
CN108027246A CN108027246A (zh) 2018-05-11
CN108027246B true CN108027246B (zh) 2022-09-27

Family

ID=56118042

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680037923.1A Active CN108027246B (zh) 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据
CN202211080086.4A Pending CN115479611A (zh) 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202211080086.4A Pending CN115479611A (zh) 2015-05-28 2016-05-27 动态地集成地理应用中的离线和在线数据

Country Status (5)

Country Link
US (2) US10077987B2 (zh)
EP (2) EP4067824A1 (zh)
CN (2) CN108027246B (zh)
DE (1) DE202016007736U1 (zh)
WO (1) WO2016191674A1 (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9616773B2 (en) 2015-05-11 2017-04-11 Uber Technologies, Inc. Detecting objects within a vehicle in connection with a service
CN108027246B (zh) * 2015-05-28 2022-09-27 谷歌有限责任公司 动态地集成地理应用中的离线和在线数据
US10712160B2 (en) 2015-12-10 2020-07-14 Uatc, Llc Vehicle traction map for autonomous vehicles
US9841763B1 (en) 2015-12-16 2017-12-12 Uber Technologies, Inc. Predictive sensor array configuration system for an autonomous vehicle
US9840256B1 (en) 2015-12-16 2017-12-12 Uber Technologies, Inc. Predictive sensor array configuration system for an autonomous vehicle
US9990548B2 (en) 2016-03-09 2018-06-05 Uber Technologies, Inc. Traffic signal analysis system
US9953523B2 (en) * 2016-04-22 2018-04-24 Here Global B.V. Node-centric navigation optimization
US10474162B2 (en) 2016-07-01 2019-11-12 Uatc, Llc Autonomous vehicle localization using passive image data
US10438493B2 (en) 2016-08-24 2019-10-08 Uber Technologies, Inc. Hybrid trip planning for autonomous vehicles
US10584974B2 (en) * 2016-10-04 2020-03-10 Bose Corporation Platform for experiencing geotagged media content
US10452068B2 (en) 2016-10-17 2019-10-22 Uber Technologies, Inc. Neural network system for autonomous vehicle control
US10296001B2 (en) * 2016-10-27 2019-05-21 Uber Technologies, Inc. Radar multipath processing
US10254121B2 (en) 2017-01-23 2019-04-09 Uber Technologies, Inc. Dynamic routing for self-driving vehicles
US10713286B2 (en) * 2017-06-27 2020-07-14 Microsoft Technology Licensing, Llc Storage of point of interest data on a user device for offline use
US20190005055A1 (en) * 2017-06-30 2019-01-03 Microsoft Technology Licensing, Llc Offline geographic searches
JP6888510B2 (ja) * 2017-10-12 2021-06-16 トヨタ自動車株式会社 サーバ装置、経路情報のマスキング処理方法およびそのプログラム
JP6866820B2 (ja) * 2017-10-12 2021-04-28 トヨタ自動車株式会社 サーバ装置、経路情報のマスキング処理方法およびそのプログラム
DE102017010183A1 (de) 2017-10-30 2018-04-05 Daimler Ag Verfahren zur Validierung einer Route auf unterschiedlichen Routingsystemen
DE102017011036A1 (de) 2017-11-29 2018-05-17 Daimler Ag Verfahren zur Synchronisation von einem in einem Fahrzeug installierten Onboard-Routingsystem und mindestens einem externen Offboard-Routingsystem, Onboard-Routingsystem zum Ausführen eines solchen Verfahrens, sowie ein Fahrzeug mit einem solchen Onboard-Routingsystem.
GB2569156B (en) * 2017-12-07 2020-08-26 Maritech Development Ltd A method of determining an optimal route
US10989538B2 (en) 2017-12-15 2021-04-27 Uatc, Llc IMU data offset compensation for an autonomous vehicle
CN108318042A (zh) * 2018-01-29 2018-07-24 广东欧珀移动通信有限公司 导航模式切换方法、装置、终端及存储介质
US20190277651A1 (en) * 2018-03-08 2019-09-12 Salesforce.Com, Inc. Techniques and architectures for proactively providing offline maps
DE102018002265A1 (de) 2018-03-20 2018-09-20 Daimler Ag Verfahren zur Berechnung einer optimierten Route für ein Fahrzeug
US11334753B2 (en) 2018-04-30 2022-05-17 Uatc, Llc Traffic signal state classification for autonomous vehicles
CN112639766A (zh) * 2018-10-05 2021-04-09 谷歌有限责任公司 改善离线地图数据可用性
CN111272185A (zh) * 2018-12-04 2020-06-12 沈阳美行科技有限公司 一种在线离线混合导航方法、装置及相关设备
EP3799617A1 (en) * 2018-12-31 2021-04-07 Google LLC Fine-tuned navigation directions
US11761772B2 (en) * 2019-10-28 2023-09-19 Here Global B.V. Method and apparatus for providing speculative navigation routing in incomplete offline maps
US20210276826A1 (en) * 2020-03-05 2021-09-09 Otis Elevator Company Receiver-less device positioning
US11637911B1 (en) * 2020-05-26 2023-04-25 Meta Platforms, Inc. Location and behavior based prefetch and caching of remote data
US20210396542A1 (en) * 2020-06-17 2021-12-23 Astra Navigation, Inc. Operating Modes of Magnetic Navigation Devices
JP2020187369A (ja) * 2020-07-22 2020-11-19 カシオ計算機株式会社 地図記録装置、プログラム及び地図記録方法
CN112115224B (zh) * 2020-09-24 2024-03-08 北京百度网讯科技有限公司 地图数据的辅助质检方法、装置、电子设备及存储介质
CN112164392A (zh) * 2020-11-13 2021-01-01 北京百度网讯科技有限公司 确定显示的识别文本的方法、装置、设备以及存储介质
CN114185908B (zh) * 2021-12-13 2024-02-06 北京百度网讯科技有限公司 一种地图数据处理方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101210959A (zh) * 2006-12-25 2008-07-02 ***通信集团公司 移动终端导航***及方法
US7496444B1 (en) * 2008-03-10 2009-02-24 International Business Machines Corporation Near route interactive map search
CN101504288A (zh) * 2008-02-04 2009-08-12 厦门雅迅网络股份有限公司 一种手机网络导航线路规划和处理方法
CN102037323A (zh) * 2008-11-06 2011-04-27 通腾科技股份有限公司 数据获取设备、数据获取***和获取数据的方法
US8620319B1 (en) * 2007-04-24 2013-12-31 At&T Mobility Ii Llc Intelligent algorithm to determine service availability and presentation to user
CN104236561A (zh) * 2014-09-17 2014-12-24 沈阳美行科技有限公司 一种车载导航在线离线混合算路方法

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0578788A1 (en) * 1991-11-01 1994-01-19 Motorola, Inc. A vehicle route planning system
US5522041A (en) * 1992-12-17 1996-05-28 Hitachi, Ltd. Data processor and data transfer method
JPH07110655A (ja) * 1993-10-13 1995-04-25 Daihatsu Motor Co Ltd ナビゲーションシステムの地図表示方法
KR100263982B1 (ko) * 1996-04-28 2000-08-16 모리 하루오 네비게이션장치
US5928307A (en) * 1997-01-15 1999-07-27 Visteon Technologies, Llc Method and apparatus for determining an alternate route in a vehicle navigation system
US6321161B1 (en) * 1999-09-09 2001-11-20 Navigation Technologies Corporation Method and system for providing guidance about alternative routes with a navigation system
JP2001116572A (ja) * 1999-10-14 2001-04-27 Yazaki Corp 車載ナビゲーション装置及び車載ナビゲーション装置における処理プログラムを記録した記録媒体
WO2001081869A1 (fr) * 2000-04-21 2001-11-01 Mitsubishi Denki Kabushiki Kaisha Systeme de navigation
AU2321102A (en) * 2001-03-12 2002-09-19 Magellan Dis, Inc. Off-board navigation system with personalized navigation database
JP4036012B2 (ja) 2001-04-26 2008-01-23 トヨタ自動車株式会社 経路案内システム、経路案内を行うクライアント端末、同クライアント端末と通信を行うサーバ、経路案内方法及び経路一致判定方法
US6587785B2 (en) * 2001-09-21 2003-07-01 General Motors Corporation Method and system for mobile vehicle re-routing
US7383123B2 (en) * 2003-06-03 2008-06-03 Samsung Electronics Co., Ltd. System and method of displaying position information including an image in a navigation system
EP1695032A4 (en) * 2003-12-08 2009-03-11 Google Inc METHOD AND DEVICE FOR ADAPTING TRAVEL PATTERNS
US7577771B2 (en) * 2004-05-03 2009-08-18 Microsoft Corporation Caching data for offline display and navigation of auxiliary information
US7176813B2 (en) * 2004-09-10 2007-02-13 Xanavi Informatics Corporation System and method for processing and displaying traffic information in an automotive navigation system
US7289039B2 (en) * 2004-09-10 2007-10-30 Xanavi Informatics Corporation Apparatus and method for processing and displaying traffic information in an automotive navigation system
US20060116818A1 (en) * 2004-12-01 2006-06-01 Televigation, Inc. Method and system for multiple route navigation
US20080132249A1 (en) * 2006-12-05 2008-06-05 Palm, Inc. Local caching of map data based on carrier coverage data
US7801675B2 (en) * 2007-07-13 2010-09-21 Dash Navigation, Inc. System and method of identifying portions of roads
ATE456118T1 (de) * 2007-10-19 2010-02-15 Fiat Ricerche System zur dynamischen navigation für ein fahrzeug
US8103441B2 (en) * 2008-06-26 2012-01-24 Microsoft Corporation Caching navigation content for intermittently connected devices
DE102010006702A1 (de) * 2009-02-26 2010-09-02 Navigon Ag Verfahren und Vorrichtung zur Berechnung alternativer Routen in einem Navigationssystem
EP2414778B1 (en) * 2009-04-01 2018-06-06 Uber Technologies, Inc. Point of interest search along a route with return
US8321125B2 (en) * 2009-06-24 2012-11-27 General Motors Llc System and method for providing route guidance to a requesting vehicle
US8700327B2 (en) * 2010-04-27 2014-04-15 Honda Motor Co., Ltd. Method of determining routes for use in navigation
US8527198B2 (en) * 2010-12-23 2013-09-03 Honda Motor Co., Ltd. Predictive traffic warning and suggestive rerouting system and method
US8457653B2 (en) * 2011-02-25 2013-06-04 Nokia Corporation Method and apparatus for pre-fetching location-based data while maintaining user privacy
SE1100538A1 (sv) * 2011-07-15 2013-01-16 Scania Cv Ab Grafiskt användargränssnitt
US8694253B2 (en) * 2011-12-28 2014-04-08 Apple Inc. User-specified route rating and alerts
US9167228B2 (en) * 2012-01-03 2015-10-20 Lawrence Maxwell Monari Instrumented sports paraphernalia system
JP5599830B2 (ja) * 2012-02-03 2014-10-01 クラリオン株式会社 経路案内システム、経路案内サーバ装置およびナビゲーション端末装置
US9596670B2 (en) * 2013-01-16 2017-03-14 Apple Inc. Location assisted service capability monitoring
US20140278056A1 (en) * 2013-03-14 2014-09-18 Yp Intellectual Property Llc System and method for route-specific searching
US9146118B2 (en) * 2014-02-27 2015-09-29 Telenav Inc. Navigation system with point of interest detour mechanism and method of operation thereof
CN103968847B (zh) * 2014-05-14 2017-06-23 百度在线网络技术(北京)有限公司 电子地图离线数据组织方法和装置
WO2015195529A1 (en) * 2014-06-20 2015-12-23 Google Inc. Integrating online navigation data with cached navigation data during active navigation
CN104613970B (zh) * 2014-07-24 2018-01-12 腾讯科技(深圳)有限公司 一种模拟导航的数据生成方法及客户端
US20160025497A1 (en) * 2014-07-24 2016-01-28 Harman International Industries, Incorporated Pre-caching of navigation content based on cellular network coverage
CN104615453B (zh) * 2014-09-26 2018-02-09 腾讯科技(深圳)有限公司 一种地图数据处理方法、装置及***
CN108027246B (zh) * 2015-05-28 2022-09-27 谷歌有限责任公司 动态地集成地理应用中的离线和在线数据
KR102498364B1 (ko) * 2016-03-24 2023-02-10 삼성전자주식회사 전자 장치 및 전자 장치에서의 정보 제공 방법
US10228271B2 (en) * 2016-10-11 2019-03-12 International Business Machines Corporation Suppressing rerouting for intentional circumstances

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101210959A (zh) * 2006-12-25 2008-07-02 ***通信集团公司 移动终端导航***及方法
US8620319B1 (en) * 2007-04-24 2013-12-31 At&T Mobility Ii Llc Intelligent algorithm to determine service availability and presentation to user
CN101504288A (zh) * 2008-02-04 2009-08-12 厦门雅迅网络股份有限公司 一种手机网络导航线路规划和处理方法
US7496444B1 (en) * 2008-03-10 2009-02-24 International Business Machines Corporation Near route interactive map search
CN102037323A (zh) * 2008-11-06 2011-04-27 通腾科技股份有限公司 数据获取设备、数据获取***和获取数据的方法
CN104236561A (zh) * 2014-09-17 2014-12-24 沈阳美行科技有限公司 一种车载导航在线离线混合算路方法

Also Published As

Publication number Publication date
US20160349063A1 (en) 2016-12-01
DE202016007736U1 (de) 2017-01-16
CN115479611A (zh) 2022-12-16
US20190025065A1 (en) 2019-01-24
EP4067824A1 (en) 2022-10-05
US10077987B2 (en) 2018-09-18
WO2016191674A1 (en) 2016-12-01
EP3303997B1 (en) 2022-07-06
CN108027246A (zh) 2018-05-11
EP3303997A1 (en) 2018-04-11
US11162799B2 (en) 2021-11-02

Similar Documents

Publication Publication Date Title
CN108027246B (zh) 动态地集成地理应用中的离线和在线数据
US10890454B2 (en) Integrating online navigation data with cached navigation data during active navigation
US11099028B2 (en) Interactive listing of ride service options in a navigation application
KR101725886B1 (ko) 자동으로 결정된 스타팅 포인트들과 선택된 목적지들 사이의 네비게이션 경로들
US8762051B2 (en) Method and system for providing navigational guidance using landmarks
US9677903B2 (en) Selected driver notification of transitory roadtrip events
JP5560229B2 (ja) 経路探索システム及び経路探索方法
US11802778B2 (en) Providing street-level imagery related to a ride service in a navigation application
US9759571B2 (en) Navigation system and navigation method of electronic device
US20230044010A1 (en) Customizing visualization in a navigation application using third-party data
US20240044665A1 (en) Navigation directions with a familiar location as an intermediate destination
JP6011907B2 (ja) ナビゲーション装置およびナビゲーション方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant