CN117571009A - 在导航应用程序中提供与乘车服务相关的街道级图像 - Google Patents

在导航应用程序中提供与乘车服务相关的街道级图像 Download PDF

Info

Publication number
CN117571009A
CN117571009A CN202311544062.4A CN202311544062A CN117571009A CN 117571009 A CN117571009 A CN 117571009A CN 202311544062 A CN202311544062 A CN 202311544062A CN 117571009 A CN117571009 A CN 117571009A
Authority
CN
China
Prior art keywords
location
ride
ride service
user
map
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.)
Pending
Application number
CN202311544062.4A
Other languages
English (en)
Inventor
J·O·杜比尔齐克
S·奥格登
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
Publication of CN117571009A publication Critical patent/CN117571009A/zh
Pending legal-status Critical Current

Links

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
    • 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/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3635Guidance using 3D or perspective road maps
    • 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
    • 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/3423Multimodal routing, i.e. combining two or more modes of transportation, where the modes can be any of, e.g. driving, walking, cycling, public transport
    • 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/3438Rendez-vous, i.e. searching a destination where several users can meet, and the routes to this destination for these users; Ride sharing, i.e. searching a route such that at least two users can share a vehicle for at least part of the route
    • 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
    • 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/3667Display of a road map
    • G01C21/3676Overview of the route on the road map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Navigation (AREA)
  • Instructional Devices (AREA)
  • Traffic Control Systems (AREA)

Abstract

经由用户界面提供交互式二维数字地图。接收获取去往目的地的行进方向的请求。从乘车服务的第三方提供商获取从接载位置乘车到下客位置以穿越路线的至少一部分的指示。获取接载位置的街道级图像并在数字地图上显示。响应于经由用户界面检测到对街道级图像的选择,将二维数字地图转换为街道级图像的交互式三维全景显示。

Description

在导航应用程序中提供与乘车服务相关的街道级图像
本申请是申请日为2018年12月14日、申请号为201880039074.2、发明名称为“在导航应用程序中提供与乘车服务相关的街道级图像”的发明专利申请的分案申请。
技术领域
本公开涉及应用程序间通信,且更特别地,涉及地图应用程序和乘车服务应用程序之间的应用程序间通信。
背景技术
如今,地理区域的数字地图通常经由地图应用程序,web浏览器等显示在计算装置上,例如计算机、平板计算机和移动电话。许多地图应用程序为用户提供了选择要查看的地图信息或特征的类型以及调整数字地图的显示的能力。
此外,地图应用程序提供商还提供了应用程序编程接口(API),用于访问地图和导航数据以显示数字地图,并提供到目的地位置的逐步导航方向。例如,乘车服务应用程序可以调用地图应用程序API来提供地理区域的数字地图,该数字地图包括用户的接载位置、目的地位置、前往目的地位置的导航方向等。
发明内容
为了在地图应用程序内提供乘车服务而不将用户引导到单独的乘车服务应用程序,地图应用程序调用一个或多个乘车服务API来访问来自各种乘车服务提供商的乘车服务数据。例如,用户可以在地图应用程序内请求去往目的地位置的导航方向。然后,用户可以从几种交通方式中进行选择以行进到目的地位置,该交通方式包括乘车服务方式。当用户选择乘车服务方式时,地图应用程序可以通过调用相应的乘车服务API与各种乘车服务应用程序进行通信。地图应用程序与乘车服务应用程序和/或乘车服务服务器进行通信,以取回由每个乘车服务提供商提供的乘车服务的类型的指示。乘车服务的类型可以包括:拼车乘车服务,其中乘车服务提供商在前往用户的目的地的途中接载其他乘客;出租车服务,在前往用户的目的地的途中不接载其他乘客;豪华轿车服务,包括车辆内的附加特色;超大型车辆服务,用于接载大批乘客,等等。地图应用程序还可以与乘车服务应用程序进行通信,以取回每种类型的乘车服务的价格估算、每种类型的乘车服务的等待时间、每种类型的乘车服务的乘车时间、关于旅行状态的乘车状态信息(例如,等待驾驶员接受乘车、等待驾驶员到达接载位置,乘车进行中、乘车完成)、用户当前位置周围的地理区域内的车辆的数目,等等。在某些场景下,不需要将乘车服务应用程序下载到用户的客户端装置,而是由地图应用程序调用相应的乘车服务API以与乘车服务服务器进行通信。
然后,用户可以直接从地图应用程序中选择乘车服务提供商和乘车服务类型,以预订去往其目的地位置的运输服务。通过这种方式,用户可以从地图应用程序内的几个候选乘车服务提供商中进行选择,而不必打开每个对应的乘车服务应用程序进行比较,也无需离开地图应用程序。此外,用户可以在具有内置的地图功能的应用程序中标识接载位置和目的地位置。例如,用户可以查看接载位置周围的区域的三维街道级视图,以便用户可以容易地在接载位置处找到驾驶员。地图应用程序还可以基于用户的上下文(context)和位置以及从用户的当前位置到接载位置的步行方向,提供关于接载位置的建议。
特别地,本公开的技术的示例实施例是一种用于在计算装置中提供多种方式的行进方向(multi-modal travel direction)的方法。该方法包括:经由用户界面接收获取去往目的地的行进方向的请求,以及生成用于前往目的地的多种方式的行进方向。生成多种方式的行进方向包括从乘车服务的第三方提供商获取乘车的指示,以穿越接载位置和下客位置之间的路线的第一路段,该乘车服务限定第一运输方式,并且获取导航方向以使用不同于第一方式的第二运输方式穿越路线的第二路段。该方法还包括经由用户界面提供生成的多种方式的方向的指示。
另一示例实施例是一种计算装置,其包括用户界面、一个或多个处理器,以及其上存储有指令的非暂时性计算机可读介质。当由一个或多个处理器执行时,指令使得计算装置经由用户界面接收获得去往目的地的行进方向的请求,并生成用于行进到目的地的多种方式的行进方向。为了生成多种方式的行进方向,指令使得计算装置从乘车服务的第三方服务商获得乘车的指示,以穿越接载位置和下客位置之间的路线的第一路段,乘车服务限定第一运输方式,并获得导航方向,以使用不同于第一方式的第二运输方式穿越路线的第二路段。指令还使得计算装置经由用户界面提供生成的多种方式的方向的指示。
又一示例实施例是计算装置中用于提供多种方式的行进方向的方法。该方法包括经由用户界面提供交互式数字地图、经由用户界面接收对获得去往目的地的行进方向的请求,以及从乘车服务的第三方提供商获得从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分。该方法还包括从乘车服务的第三方服务商接收可视化信息,该可视化信息用于在数字地图上渲染乘车的可视化,以及根据接收到的可视化信息在数字地图上生成乘车的可视化。
另一示例实施例是计算装置,其包括用户界面、一个或多个处理器、以及其上存储有指令的非暂时性计算机可读介质。当由一个或多个处理器执行时,指令使得计算装置经由用户界面提供交互式数字地图,经由用户界面接收获得去往目的地的行进方向的请求,以及从乘车服务的第三方提供商获得从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分。指令还使得计算装置从乘车服务的第三方服务商接收可视化信息,该可视化信息用于在数字地图上渲染乘车的可视化,以及根据接收到的可视化信息在数字地图上生成乘车的可视化。
另一示例实施例是在便携式计算装置中用于在数字地图上提供乘车服务信息的方法。该方法包括经由用户界面提供地理区域的交互式数字地图,经由用户界面接收对获得去往目的地的行进方向的请求,以及从乘车服务的多个第三方服务商请求去往目的地的路线的至少一部分的候选乘车的相应指示,每个指示包括接载位置、价格估算和接载时间。该方法还包括接收候选乘车的请求到的指示,根据价格和接载时间中的至少一个来确定候选乘车的排名,在数字地图上根据确定的排名提供候选乘车的列表,且响应于候选乘车中经由用户界面选择的一个,将对所选择的乘车的请求发送给对应的第三方提供商。
又一示例实施例是在便携式计算装置中用于在计算装置上提供与乘车服务相关的地图数据的方法。该方法包括经由用户界面提供交互式二维数字地图,经由用户界面接收对获得去往目的地的行进方向的请求,以及从乘车服务的第三方提供商获得从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分。该方法还包括获得接载位置的街道级图像,在数字地图上显示针对接载位置所获得的街道级图像,以及响应于经由用户界面检测对街道级图像的选择,将二维数字地图转换为街道级图像的交互式三维全景显示。
另一示例实施例是一种由便携式计算装置执行的用于提供与乘车服务相关的地图数据的方法,所述方法包括:由一个或多个处理器经由用户界面提供交互式二维数字地图;经由所述用户界面接收获取去往目的地的行进方向的请求;由所述一个或多个处理器从乘车服务的第三方提供商获取从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分;由所述一个或多个处理器获取所述接载位置或所述下客位置的街道级图像;显示在所述数字地图上叠盖的针对所述接载位置或所述下客位置所获取的街道级图像的预览;以及响应于经由所述用户界面检测到对所述街道级图像的预览的选择,将所述二维数字地图转换为街道级图像的交互式三维全景显示。
另一示例实施例是一种用于提供与乘车服务相关的地图数据的计算装置,包括:一个或多个处理器;用户界面;非暂时性计算机可读介质,其上存储有指令,当所述指令由所述一个或多个处理器执行时,使得所述计算装置:经由所述用户界面提供交互式二维数字地图,经由所述用户界面接收获取去往目的地的行进方向的请求;从乘车服务的第三方提供商获取从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分;获取所述接载位置或所述下客位置的街道级图像;显示在所述数字地图上叠盖的针对所述接载位置或所述下客位置所获取的街道级图像的预览;以及响应于经由所述用户界面检测到对所述街道级图像的预览的选择,将二维数字地图转换为街道级图像的交互式三维全景显示。
附图说明
图1是示例***的框图,其中可以实现经由地图应用程序向便携式装置提供乘车服务的技术;
图2是示例便携式装置的框图,其可以在图1的***中操作;
图3是示例时序图,其示出了响应于提供给地图应用程序的用户输入在地图应用程序和乘车服务应用程序之间的信息的示例交换;
图4是在地图应用程序内在乘车服务请求期间在用户界面之间进行转换的示例性流程图;
图5是通过调用乘车服务API经由地图应用程序请求乘车服务的示例性状态图;
图6是生成从起始位置到目的地位置的推荐的多种方式的路线的示例性流程图;
图7是在地图应用程序内提供乘车服务而无需将用户引导到单独的乘车服务应用程序的示例性流程图;
图8是当用户转换到其他地图功能时呈现乘车状态信息的示例性流程图;
图9是在地图应用程序中选择乘车服务的示例性显示;
图10是在地图应用程序中选择接载位置的示例性显示;
图11A是地图应用程序中的示例性乘车请求显示,其包括由乘车服务提供商定制的布局组件;
图11B是地图应用程序中的另一示例性乘车请求显示,其包括由乘车服务提供商定制的布局组件;
图12A是在地图应用程序中确定乘车的示例性接载请求显示;
图12B是在地图应用程序中确定乘车的另一示例性接载请求显示;
图12C是在地图应用程序中确定乘车的又一示例性接载请求显示;
图13A是当用户等待由地图应用程序中的乘车服务提供商接载时呈现的示例性等待乘车显示;
图13B是在地图应用程序中呈现的另一示例性等待乘车显示。
具体实施方式
概述
通常来说,用于在地图应用程序内提供乘车服务的技术可以在以下装置中操作的地图应用程序中实现:便携式计算装置或可穿戴装置、一个或多个网络服务器、或包括这些装置的组合的***。然而,为清楚起见,下面的示例主要集中于用户经由便携式计算装置内的地图应用程序请求乘车服务的实施例。地图应用程序调用一个或多个乘车服务API以与相应的乘车服务应用程序和/或乘车服务服务器通信。地图应用程序还可以与地图数据服务器和/或导航数据服务器进行通信以取回地图和导航数据,来显示用户的当前位置周围的地理区域的交互式二维数字地图和去往由用户选择的目的地位置(本文也称为“下客位置”)的导航方向。
然后,地图应用程序可以显示一个或多个乘车服务提供商的乘车服务数据,包括由每个乘车服务提供商提供的乘车服务的类型、每种类型的乘车服务的价格估算、每种类型的乘车服务的等待时间、每种类型的乘车服务的乘车持续时间、用户当前位置周围的地理区域内的车辆、等等。
当用户选择乘车服务提供商和乘车服务的类型时,地图应用程序可以提示用户选择接载位置。在一些实施例中,地图应用程序提供用户的当前位置附近的默认的接载位置,并且用户可以经由用户控件来调整接载位置。同样在一些实施例中,地图应用程序可以基于用户的当前位置和上下文信息来提供推荐的接载位置。例如,在有多条单向街道的区域中,地图应用程序可能会建议在允许驾驶员在目的地位置的方向上行进的街道处的接载位置,使得驾驶员在接载用户后无需进行不必要的转弯。在另一示例中,可以基于交通来确定推荐的接载位置,以避免交通堵塞的街道,以使费用最小化。
响应于接收到对接载位置的选择,地图应用程序可以调用对应于所选的乘车服务提供商的乘车服务API,并向对应的乘车服务应用程序提供用户的乘车标识信息、所请求的接载位置以及乘车服务的类型。乘车服务应用程序然后可以提供乘车标识符、更新的等待时间、更新的价格估算,更新的乘车持续时间以及驾驶员标识信息,以经由乘车服务API显示在地图应用程序上。结果,驾驶员可以在所请求的接载位置接载用户,并在目的地位置让用户下车。
示例硬件和软件组件
参考图1,其中可以实现上面概述的技术的示例通信***100包括客户端计算装置102,例如便携式装置,其配置为执行一个或多个乘车服务应用程序126和地图应用程序128。除了客户端计算装置102以外,通信***100还包括服务器装置104,例如导航服务器装置,其配置为向客户端计算装置102提供地图显示和导航数据。通信***100还包括第三方提供商装置106(其与服务器装置104独立且分开操作),其可以配置为与客户端计算装置102和服务器装置104通信以提供乘车服务功能。客户端计算装置102、服务器装置104和第三方提供商装置106可以通过网络108彼此通信连接。网络108可以是诸如互联网的公共网络,或者诸如内部网的私有网络。
服务器装置104可以通信地耦接到数据库110,该数据库在示例实施方式中存储用于各种地理区域的地图数据。类似地,服务器装置104可以通信地耦接到数据库144,该数据库在示例实施方式中存储以下车辆的车辆数据144:与客户端计算装置102的用户相关联的各种车辆、与第三方提供商106相关联的车辆、以及其他车辆(其数据由服务器装置104或其他服务器收集),或所有这三者的组合。更一般地,服务器装置104可以与一个或多个数据库通信,该数据库存储任何类型的合适的地理空间信息或可以链接到地理上下文的信息,例如优惠券或报价。服务器装置104还可以通信地耦接到数据库(未示出),该数据库在示例实施方式中存储导航数据,该导航数据包括逐步的导航方向,例如驾车、步行、骑行或公共交通方向,例如,该导航数据最终可以由乘车服务应用程序126、地图应用程序128或两者使用。例如,服务器装置104可以从地图数据数据库110请求并接收地图数据以及从车辆数据数据库144请求并接收相关的车辆数据。在一些实施方式中,服务器装置104可以包括若干个通信连接的服务器装置。类似地,分别存储在数据库110和144中的地图数据和车辆数据实际上可以是以云数据库配置通信地连接的若干个数据库。
在示例实施方式中,客户端计算装置102可以例如是智能手机或平板计算机,并且包括存储器120、一个或多个处理器112、网络接口116、用户界面(UI)114和一个或多个传感器118。存储器120可以是非暂时性存储器,并且可以包括一个或多个合适的存储器模块,例如随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、其他类型的永久性存储器等。UI114例如可以是触摸屏。更一般而言,本公开的技术可以在其他类型的装置中实现,例如膝上型计算机或台式计算机,嵌入车辆中的装置(例如车头单元)、可穿戴装置(例如智能手表或智能眼镜)、等等。
取决于实施方式,一个或多个传感器118可以包括:全球定位***(GPS)模块,以检测客户端计算装置102的位置;指南针,以确定客户端计算装置102的方向;陀螺仪,以确定旋转和倾斜;加速度计,等等。
存储器120存储操作***(OS)122,该操作***可以是任何类型的合适的移动或通用操作***。OS122可以包括API函数,这些API函数允许应用程序(例如乘车服务应用程序126和地图应用程序128)相互交互,或取回例如传感器读数。例如,被配置为在客户端计算装置102上执行的软件应用程序可以包括指令,该指令调用OS122API,以取回该时刻的客户端计算装置102的当前位置和取向。API还可以返回定量指示,该定量指示表明API对估算的确定程度(例如,以百分比表示)。
存储器120还存储地图应用程序128,其配置为生成交互式数字地图。地图应用程序128可以从地图数据数据库110和/或服务器装置104接收栅格(例如,位图)或非栅格(例如,矢量图形)格式的地图数据。在一些情况下,地图数据可以组织为多个层,例如描绘道路、街道、自然构造等的基本层;描述当前交通状况的交通层;描述当前天气状况的天气层;描述到达目的地的路径的导航层,等等。地图应用程序128还可以显示从起始位置到目的地位置的导航方向。导航方向可以包括驾车、步行或公共交通方向。
需要注意的是,尽管图1将地图应用程序128图示为独立应用程序,地图应用程序128的功能也可以以在线服务的形式提供(该在线服务可经由在客户端计算装置102上执行的web浏览器访问),作为在客户端计算装置102上执行的另一个软件应用程序的插件或扩展,等等。通常可以针对不同的相应操作***以不同版本提供地图应用程序128。例如,客户端计算装置102的制造商可以提供软件开发套件(SDK),该软件开发套件(SDK)包括用于AndroidTM平台的地图应用程序128,用于iOSTM平台的另一个SDK,等等。
在一些实施方式中,服务器装置104包括一个或多个处理器130、API 132、网络接口134和存储器136。API 132可以提供用于与可以存储在服务器装置104上的存储器136中的应用程序交互的功能。存储器136可以是有形的非暂时性存储器,并且可以包括任何类型的合适的存储器模块,包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、其他类型的永久性存储器等。存储器136存储可在处理器130上执行的指令,该指令可以生成要由地图应用程序128针对地理区域显示的地图显示。存储器136或另一服务器中的存储器类似地可以存储指令,该指令生成到地理区域内的地理位置的导航方向,并且可以由地图应用程序128显示为叠盖地图显示。在一些实施方式中,第三方提供商106可以发起对服务器装置104的调用,以获取可由客户端计算装置102上的乘车服务应用程序126使用的导航方向。
为了简单起见,图1仅将服务器装置104图示为服务器的一个实例。然而,根据一些实施方式的服务器装置104包括一个或多个服务器装置的组,每个服务器装置配备有一个或多个处理器并且能够独立于其他服务器装置进行操作。在这样的组中操作的服务器装置可以:以分布式方式单独处理来自客户端计算装置102的请求(例如,基于可用性),其中与处理请求相关联的一个操作在一个服务器装置上执行,而与处理相同的请求相关联的另一个操作在另一个服务器装置上执行;或者根据任何其他合适的技术单独处理来自客户端计算装置102的请求(例如,基于可用性)。为了该讨论的目的,术语“服务器装置”可以指单个服务器装置或者两个或多个服务器装置的组。
在一些实施方式中,第三方提供商装置106或乘车服务提供商装置可以包括处理器138、API 140、网络接口142和存储器144。API 140可以提供用于与可以存储在第三方提供商106上的存储器144中的应用程序交互的功能。存储器144可以是有形的非暂时性存储器,并且可以包括任何类型的合适的存储器模块,包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、其他类型的永久性存储器等。存储器144存储可在处理器138上执行的指令,所述指令可以生成、处理和传输对乘车服务应用程序(例如存储在客户端计算装置102的存储器120中的乘车服务应用程序126)中的乘车服务功能的请求。
在一些实施方式中,***100包括对应于若干个不同乘车服务提供商的若干个第三方提供商装置106。同样在一些实例下,客户端计算装置102包括对应于每个乘车服务提供商的若干个乘车服务应用程序126。以这种方式,用户可以比较若干个乘车服务提供商的乘车服务类型、价格估算、乘车时间和估算的等待时间。
图2是示例软件架构200的框图,其可以实现在客户端计算装置102上,且可以包括协议以用于客户端计算装置上的操作***122、乘车服务应用程序126、地图应用程序128、服务202、以及其他应用程序204之间的通信。在一些实施方式中,乘车服务应用程序公开由地图应用程序128调用的乘车服务API 206。以这种方式,地图应用程序128可以允许用户请求乘车服务而不必离开地图应用程序128。例如,地图应用程序128可以向乘车服务API 206提供接载和目的地位置,这可以进而提供地理区域中的乘车服务的类型、每种类型的乘车服务的价格估算、每种类型的乘车服务的等待时间、每种类型的乘车服务的乘车持续时间、地理区域内的车辆的数量、等等。
通常,地图应用程序128可以通过访问乘车服务API 206来对乘车服务应用程序126或乘车服务服务器106进行函数调用。API 206有助于应用程序间通信,并允许地图应用程序128和乘车服务应用程序126保持对流程、逻辑和用户的处理方式的控制,同时仍向其他应用程序公开函数。应用程序126和128可以使用操作***122提供的进程间通信(IPC)方案进行通信。在客户端计算装置102的一些实施例中,乘车服务应用程序126的函数可以被提供为经由乘车服务API 208可访问的静态函数库(library of function)。换句话说,乘车服务应用程序126的一些或全部函数可以作为地图应用程序128的一部分来执行。更一般地,乘车服务API 208使用任何适当的软件架构和通信方案(包括本领域当前已知的那些)向地图应用程序128提供对乘车服务的访问。通常可以针对不同的相应操作***以不同版本提供乘车服务API 208。例如,客户端计算装置102的制造商可以提供软件开发套件(SDK),该软件开发套件(SDK)包括用于AndroidTM平台的乘车服务API 208,用于iOSTM平台的另一个SDK,等等。
在一些实例中,地图应用程序128可以经由相应的API与若干个乘车服务应用程序进行通信。如果用户没有与地图应用程序128通信的乘车服务应用程序,则可能会提示用户下载乘车服务应用程序126。在其他实施例中,用户没有下载乘车服务应用程序126,但是地图应用程序128可以经由乘车服务API 206与乘车服务服务器(例如如图1所示的第三方提供商装置106)通信。
图3是示例性时序图300,描绘了利用API的地图应用程序和乘车服务应用程序之间的调用。时序图300示出了本文公开的实施例的一种实现方式的示例消息时序图。时序图300包括用户302、地图应用程序128、乘车服务应用程序126和乘车服务API 208。
在示例时序图300中,用户302经由由地图应用程序128呈现在显示上的用户控件来请求乘车服务304。例如,用户可以请求去往所选择的目的地位置的方向以获得乘车服务运输方式。响应于该请求,地图应用程序128可以为乘车服务生成对乘车服务应用程序API208的API调用,其中,例如,API调用包括对乘车服务以及用户的当前位置和目的地位置306的请求。然后,将API调用作为请求308发送到乘车服务应用程序126或乘车服务服务器(例如第三方提供商装置106)。
乘车服务应用程序126可以执行其自身的内部函数,以确定可用于为用户302服务的乘车服务的类型、将用户302运送到目的地位置的价格估算、接载用户302的等待时间,用户的当前位置周围的地理区域内的车辆的数量,等等。乘车服务应用程序126然后准备要发送到地图应用程序128的响应310,例如,具有可用的乘车服务的类型、通过每种类型的乘车服务的预计到达时间、每种类型的乘车服务的估算价格、该区域中的车辆/驾驶员的估算,或其组合。乘车服务API 208接收到响应310,然后将其格式化并提供给地图应用程序128(参考No.311)进行处理,并在必要时进行操纵,以显示312给用户302。
例如,地图应用程序128可以显示以下的指示:可用的每种类型的乘车服务(例如,拼车乘车服务、出租车乘车服务、豪华轿车乘车服务、超大型车辆服务)、每种类型的乘车服务的价格估算、每种类型的乘车服务的乘车持续时间、以及每种类型的乘车服务的估算等待时间。如乘车服务API 126所指示的,地图应用程序128还可在地图显示上显示与地理区域内的车辆数量成比例的车辆的指示。虽然地图显示上的车辆的位置可能无法准确代表乘车服务提供商所使用的车辆的位置,但地图显示上的车辆数量可用于向用户显示区域中的车辆的数量的近似值。当多个乘车服务提供商可用时,地图应用程序128可以以不同的样式或颜色显示每个乘车服务提供商所使用的车辆的指示。
在一些实施例中,所显示的乘车服务的可用类型的指示可以包括用于选择乘车服务的类型的可选用户控件。用户302查看所显示的指示312并选择乘车服务的类型。然后,地图应用程序128可以呈现用于选择接载位置的用户控件。用户控件可以是放置在用户的当前位置或用户的当前位置附近的图钉,用户可以通过输入地址或兴趣点(POI),将图钉拖动到另一个位置或以其他任何合适的方式将图钉移动到另一个位置。然后将接载位置和所选择的乘车服务的类型提供给乘车服务API 208(参考no.316)并转发给乘车服务应用程序126(参考no.318)。然后,乘车服务应用程序126选择要接载用户的驾驶员,并将所选择的驾驶员的驾驶员标识信息(例如,驾驶员的名字、车辆厂名、型号、以及颜色、车牌号,等等)、更新的价格估算、更新的等待时间、用于取回指示驾驶员正在接载用户的途中的状态信息的乘车ID、等等发送给乘车服务API 208(参考no.320),其然后被给格式化并提供给地图应用程序128(参考no.321)。相应地,地图应用程序128可以向用户302呈现驾驶员的状态的指示(例如,在接载用户的途中)、更新的价格估算、更新的等待时间以及驾驶员标识信息。
图4是在地图应用程序128内在乘车服务请求期间在用户界面之间进行转换的示例性流程图500。该方法可以在指令集中实现,该指令集以存储在计算机可读存储器中并且可以在客户端计算装置102的一个或多个处理器上执行。例如,该方法可以由地图应用程序128、乘车服务应用程序128或其任意合适的组合来实现。
在框502处,呈现地图显示,其包括用户的当前位置周围的地理区域。用户的当前位置的指示也可以呈现在地图显示上。然后在框504处,地图应用程序128呈现搜索栏,用于从用户获得地理搜索查询并响应于该地理搜索查询提供搜索结果。例如,搜索结果可以包括POI、地址、交叉点等,并且用户可以选择搜索结果之一作为目的地位置,并请求去往所选择的目的地位置的方向。
地图应用程序128还可以包括用于在几种运输方式(包括乘车服务运输方式)之间进行选择的用户控件。响应于接收到乘车服务运输方式,地图应用程序128可以呈现乘车请求显示(框506),其包括以下的指示:乘车服务提供商、来自乘车服务提供商的乘车服务的类型、每种类型的乘车服务的价格估算、每种类型的乘车服务的乘车持续时间、每种类型的乘车服务的等待时间,等等,类似于图11B所示的显示。在一些实施例中,地图应用程序128可以为一个或多个乘车服务应用程序中的每一个调用乘车服务API,并且可以经由相应的API向乘车服务应用程序中的每一个提供用户的当前位置和目的地位置。
响应于接收到对乘车服务提供商和/或乘车服务的类型的选择,地图应用程序128可以呈现接载请求显示(框508),其包括用于选择接载位置的用户控件,类似于图12A所示的显示。接载请求显示可以包括在用户的当前位置的阈值距离内(例如500英尺)的默认接载位置,其中默认接载位置可由用户调整。例如,用户可以输入接载位置或拖动默认接载位置处呈现的图钉以选择接载位置。在一些实施例中,地图应用程序128可以提供推荐的接载位置以节省时间和金钱。例如,推荐的接载位置可以距用户的当前位置350英尺,并且接载请求显示可以指示用户可以通过选择推荐的接载位置来“节省3分钟和$2”。接载请求显示还可以包括用于确认接载位置的用户控件,例如在选择接载位置之后的“确认接载”按钮。
响应于接收到对接载位置的选择,地图应用程序128可以呈现等待乘车显示(框510),类似于图13A所示的显示。等待乘车显示可以包括以下的指示:驾驶员的当前位置、驾驶员的标识信息、驾驶员到达所选择的接载位置的估算等待时间、以及用于联系驾驶员的用户控件。一旦驾驶员到达,可以将用户运送到目的地位置。
当用户在地图应用程序128内请求乘车服务时,地图应用程序128将用户登录信息提供给乘车服务提供商,以使用户登录到乘车服务提供商维护的用户简档。例如,用户简档可以包括用户的付款方式、用户的姓名、用户的电子邮件地址,用户的电话号码、用户的照片(以供驾驶员识别用户)、用户等级、乘车ID(用于当前正在进行的乘车或用户正在请求的乘车)、或任何其他合适的用户简档信息。一旦用户确认乘车请求,地图应用程序128可以接收用于取回乘车的状态信息的乘车ID,例如“等待驾驶员接受乘车请求”、“等待驾驶员到达接载位置”、“乘车进行中”和“乘车完成”。
图5是通过调用乘车服务API 208经由地图应用程序128请求乘车服务的示例性状态图600。状态图描绘了若干状态,例如初始状态602、登录状态604、确认/预定状态606、恢复状态608、乘车进行中状态610和转换状态612。在任何时候,状态602-610中的任何一个都可以返回到初始状态,如状态图600所示。
在一个实施方式中,用户打开地图应用程序128并从初始状态602开始。在初始状态602,地图应用程序128呈现地理区域的地图显示且可以接收地理搜索查询,响应于地理搜索查询提供搜索结果,并且显示从用户的当前位置或某些其他指定起始位置到所选择的目的地位置的导航或行进方向。可以提供导航或行进方向以用于若干不同形式运输方式(例如,步行、骑行、驾车、公共交通、乘车服务、推荐的运输方式,其可以包括基于最短持续时间、距离或最低费用等到达目的地位置的多种运输方式)。当用户选择乘车服务运输方式或选择包括由乘车服务覆盖的路段的多种方式的行进方向且选择乘车服务提供商/乘车服务的类型时,地图应用程序128继续进行到登录状态604。
在登录状态604中,地图应用程序128确定用户是否登录到与地图应用程序128的提供商相关联的客户端账户616。如果用户未登录,则地图应用程序128可以提供用于输入用户登录信息(例如用于登录客户端帐户616的用户名和密码)的用户控件。当用户登录时,地图应用程序128将用户登录到与提供乘车服务的第三方提供商618相关联的用户简档中。在一些实施例中,用户可以使用与地图应用程序128的提供商相关联的客户账户616登录到第三方提供商。当用户登录到第三方提供商时,地图应用程序128调用乘车服务API 208,以取回与用户简档相关联的乘车ID,以确定是否存在当前进行中的乘车。如果存在当前进行中的乘车,地图应用程序128转换到恢复状态608。另一方面,如果不存在乘车ID,则地图应用程序128继续进行到确认/预定状态606。
在确认/预定状态606中且更具体地在确认状态620中,地图应用程序128呈现接载请求显示,其包括用于选择接载位置的用户控件,类似于图12A所示的显示。接载请求显示还可以包括用于选择或添加支付方式的用户控件。例如,地图应用程序128可以经由乘车服务API 208取回与乘车服务提供商一起存储的用户的支付方式。地图应用程序128可以显示这些支付方式中的每一个的掩蔽的(masked)指示以供用户选择,并且可以显示用于用户输入新支付方式的附加用户控件。在一些实施方式中,当用户已经选择接载位置和支付方式时,地图应用程序128可以呈现诸如“确认接载”按钮的用户控件,当其被选择时,将地图应用程序128转换到预定状态622。
在预定状态622下,地图应用程序128经由乘车服务API 208从乘车服务提供商请求从接载位置到目的地位置的乘车服务。然后,乘车服务API 208与乘车服务提供商通信以选择针对该乘车的驾驶员。例如,乘车服务提供商可以在接载位置的阈值距离内向每个驾驶员广播消息,并可以选择对广播的消息作出响应的第一个驾驶员。在任何情况下,乘车服务API 208随后可以将乘车ID提供给地图应用程序128,而地图应用程序128继续进行至乘车进行中状态626。在乘车进行中状态下,地图应用程序128连续或周期性地(例如,每5-10秒)调用获取乘车状态函数612以通过将乘车ID提供给乘车服务API 208来接收关于乘车状态的状态信息。作为相应,乘车服务API 208将状态信息提供给地图应用程序128。状态信息可以包括:等待驾驶员接受乘车628,等待驾驶员到达接载位置630,乘车进行中632和乘车完成634。
在等待驾驶员到达接载位置630和乘车进行中632状态期间,乘车服务API 208还可以返回驾驶员的当前位置以经由地图应用程序128显示。以这种方式,地图应用程序128可以在地图显示上呈现驾驶员的指示以及接载位置或目的地位置,以供用户查看驾驶员到接载位置的进度或去往目的地位置的路线。此外,在以下状态期间:等待驾驶员接受乘车628、等待驾驶员到达接载位置630和乘车进行中632状态,地图应用程序128可以呈现用于取消乘车的用户控件,该用户控件当被选择时,可以使地图应用程序128经由乘车服务API208向乘车服务提供商提供取消请求以取消乘车。地图应用程序128还可以呈现用于修改目的地位置的用户控件,该用户控件当其被选择时,可以使地图应用程序128经由乘车服务API 208向乘车服务提供商提供修改目的地请求。
一旦用户在目的地位置下车,则地图应用程序128可以继续进行到完成状态632。在完成状态632,地图应用程序128可以呈现乘车的概要,包括乘车的最终价格、用于对驾驶员进行评分的用户控件、或关于评分的任何其他合适的信息。然后,地图应用程序128可以返回到初始状态602。
如上所述,当用户登录第三方提供商且存在当前进行中的乘车时,地图应用程序128转换到恢复状态608。例如,用户可能已经退出地图应用程序128,然后在请求乘车时重新打开它。在恢复状态608,地图应用程序128继续进行到乘车进行中状态626且连续地或周期性地(例如,每5-10秒)调用获取乘车状态函数612以接收关于乘车状态的状态信息。
除了提供乘车服务以外,地图应用程序128提供多种方式的运输方式用于将用户导航到其目的地位置。例如,用户可以选择推荐的运输方式,其可以包括基于最短持续时间、距离或最低费用等的多种运输方式以提供到达目的地位置的最佳路线。在一些实施例中,用户可以提供偏好,例如“避免高速公路”、“利用公共交通”、“避免夜间步行方向”、“最低费用”、“最短持续时间”,可以指示偏好的运输方式、偏好的乘车服务提供商,和/或偏好的乘车服务类型(例如,拼车乘车服务),或可以提供任何其他合适的偏好。相应地,地图应用程序128可以使用一种或多种运输方式并根据用户的偏好来呈现去达目的地位置的一种或多种最佳路线。
在一些实施例中,地图应用程序128使用推荐的运输方式向服务器装置104提供对导航方向的请求,该请求包括起始位置、目的地位置和包含用户的偏好的用户数据。服务器装置104可以取回地图数据、导航数据、交通数据等,以生成从起始位置到目的地位置的路线。另外在一些实施例中,服务器装置104可以唤醒乘车服务API 208以取回乘车服务提供商的乘车服务数据,例如路线的特定路段的估算的等待时间和价格估算。例如,最佳路线可以包括去往和/或始自公共交通站点的乘车服务。更具体地,服务器装置104可以生成推荐的多种方式的路线,其包括距用户的起始位置一英里的第一公共交通站点和距用户目的地位置一英里的第二公共交通站点。推荐的多种方式的路线可以包括从起始位置到第一公共交通站点的乘车服务和从第二公共交通站点到目的地位置的另一乘车服务。在另一示例中,推荐的多种方式的路线可以包括从起始位置到第一公共交通站点或从第二公共交通站点到目的地位置的步行方向。
通过与乘车服务提供商通信,服务器装置104可以标识使费用和/或等待时间最小化的乘车服务提供商和/或乘车服务类型。当用户指示偏好的乘车服务提供商或乘车服务类型时,服务器装置104可以从偏好的乘车服务提供商取回乘车服务数据并将偏好的乘车服务提供商包括在路线中。然后,服务器装置104可以生成一个或多个推荐的多种方式的路线,并将推荐的路线提供给地图应用程序128,以便用户选择其中一个推荐的路线并开始导航前往目的地位置。
图6示出了生成从起始位置到目的地位置的推荐的多种方式的路线的示例方法800的流程图。该方法可以实现在指令集中,该指令集存储在计算机可读存储器中并且可以在服务器装置104的一个或多个处理器上执行。在其他实施例中,该方法可以由在客户端计算装置102上可执行的应用程序或服务器装置104和客户端计算装置102的组合来实现。
在框802处,接收对行进方向的请求,该请求包括起始位置和目的地位置。对行进方向的请求可以从在用户的客户端计算装置102上执行的地图应用程序128接收。用户可以例如通过响应于地理搜索查询来选择搜索结果、输入目的地位置、在地图显示上触摸选择目的地位置,或者以任何其他合适的方式来提供目的地位置。起始位置可以是用户的当前位置,也可以是用户提供的其他位置。
在框804处,地图应用程序128还可以提供请求以接收推荐的运输方式的行进方向。推荐的运输方式可以包括多种运输方式。此外,响应于对使用推荐的运输方式的行进方向的请求,服务器装置104可以提供去往目的地位置的多个路线,每一个涉及一种或多种运输方式以供用户选择。当请求使用推荐的运输方式的行进方向时,地图应用程序128可以提供推荐的路线的用户偏好,例如“避免高速公路”、“利用公共交通”、“避免夜间步行方向”、“最低费用”、“最短持续时间”、偏好的乘车服务提供商和/或偏好的乘车服务类型(例如,拼车乘车服务),或任何其他合适的用户偏好。
响应于接收对使用推荐的运输方式的行进方向的请求,服务器装置104可以标识从起始位置到目的地位置的若干路线,每一个涉及一种或多种运输方式(框806)。在一些实施例中,路线可以包括使用乘车服务运输方式的第一路段和使用另一种运输方式(例如步行、驾车、骑行、公共交通等)的第二路段。例如,服务器装置104可以标识第一路线,其包括从起始位置驾驶到目的地位置或预订乘车服务。服务器装置104可以标识第二路线,其包括步行到火车站,从第一火车站搭乘火车到第二火车站,以及预订乘车服务从第二火车站到目的地位置。此外,服务器装置104可以标识第三路线,其包括从起始位置骑行到公交车站,从第一公交车站搭乘公交车到第二公交车站,从第二公交车站步行到火车站,从第一火车站搭乘火车到第二火车站,以及步行到目的地位置。在其他实施例中,地图应用程序128使用存储在客户端计算装置102的本地存储器中的缓存的地图数据来生成行进方向,或者使用缓存的地图数据来为路线的不包括乘车服务的路段生成行进方向。
在一些实施例中,标识的路线可以包括特定的乘车服务提供商和/或乘车服务类型。例如,一些乘车服务提供商可以包括班车(shuttle)乘车服务类型,并且路线可以包括搭乘火车到班车接载位置附近的车站,然后采用乘车服务从班车接载位置到距目的地位置步行距离的班车车站。通过这种方式,当班车接载位置可以与火车站同步时,用户可以节省时间并降低费用。
在框808处,根据优化技术对所标识的路线中的每个路线进行排名或评分。例如,可以根据距离、持续时间、费用、用户数据(包括用户偏好)等一个或多个因素对所标识的路线进行排名或评分。例如,可以对所标识的路线进行排名,以使到达目的地位置的总行进时间最小化。在另一个示例中,可以对所标识的路线进行排名,以使到达目的地位置的总行进价格最小化。
在又一个示例中,每个所标识的路线可以接收距离得分、持续时间得分、费用得分、用户偏好得分或任何其他合适的得分,并且可以以任何合适的方式对得分进行加权、汇总或组合以为每个路线生成总得分。然后可以以它们的相应的分数的顺序对路线进行排序,以使费用、时间、和/或距离最小化。在一些实施例中,不符合用户偏好的路线可以被过滤掉或者可以接收零分。以这种方式,可以根据用户数据对推荐的路线和/或乘车服务提供商/乘车服务类型进行排名/选择。例如,如果用户指示他不想在夜间步行,则包括阈值时间段之后的步行路段的任何路线可以被过滤掉或排名在底部。可以基于使用特定公共交通***的费用或使用特定乘车服务提供商和/或乘车服务类型的费用来确定费用。例如,服务器装置104可以调用一个或多个乘车共享API 208以确定为路线的路段使用特定乘车服务提供商和/或乘车服务类型的价格估算。
除了对所标识的路线进行排名之外,服务器装置104还可以对候选乘车进行排名,其中每个候选乘车对应于特定的乘车服务提供商和乘车服务类型。可以根据例如距离、持续时间、费用、用户数据(包括用户偏好)等一个或若干个因素对候选乘车进行排名或评分。例如,可以对候选乘车进行排名,以使驾驶员到达接载位置的等待时间最小化。在另一个示例中,可以对候选乘车进行排名,以使去往目的地位置的行进的总价格最小化。服务器装置104可以根据等待时间、价格或任何其他合适的类别分别对这些候选乘车进行排名。在一些实施例中,也可以根据乘车服务提供商的用户反馈数据对候选乘车进行排名。用户反馈数据可以包括由乘客指示对乘车服务提供商的过去评分或评论的数据。
然后,在框810处,服务器装置104将排名高于阈值排名的路线集或乘车的列表(例如,排名最高的三个路线)作为推荐路线或乘车提供给地图应用程序128,以供用户从中选择。例如,可以在地图显示的区域中提供排名最高的前三个路线中的每条路线的指示(例如,作为代表路线的路段的运输方式的一系列图标),用户可以通过触摸选择推荐的路线的指示来选择其中一条路线。在其他实施例中,服务器装置104选择一个路线(例如,最高排名的路线),并将所选择的路线提供给地图应用程序128。在示例性场景中,地图应用程序128显示三个路线,其中第一路线包括预订由Rider提供的从起始位置(例如,用户的当前位置)到火车站的出租车乘车服务,从第一火车站乘火车到第二火车站,然后步行到目的地位置。第二路线包括步行到班车接载位置以乘坐由DriverCo提供的班车乘车服务,搭乘班车乘车服务到第二班车站/接载位置,然后步行到目的地位置。第三路线包括步行到公交车站,从第一公交车站搭乘公交车到第二公交车站,步行到火车站,从第一火车站搭乘火车到第二火车站,然后订购由Rider提供的拼车乘车服务从第二火车站到目的地位置。
当用户选择包括由乘车服务覆盖的路段的推荐的多种方式的路线之一或选择使用乘车服务运输方式的路线时,地图应用程序128可以调用一个或多个乘车服务API 208以与若干个乘车服务提供商通信。例如,路线可以包括从第一火车站搭乘火车到第二火车站,然后订购乘车服务从第二火车站到目的地位置。在该示例中,第二车站可以是乘车服务的接载位置,且目的地位置可以是下客位置。地图应用程序128可以标识用户将到达第二火车站的估算时间,从而确定接载位置。相应地,地图应用程序128可以请求乘车在接载位置处的估算时间或估算时间的阈值时间段内(例如,五分钟、十分钟内等)开始。
同样,当用户选择推荐的多种方式的路线之一时,地图应用程序128在地图显示上显示该路线的可视化。例如,可视化可包括起始位置和目的地位置的指示,例如两个位置处的图钉。可视化还可以包括从起始位置到目的地位置的路线的指示。例如,可以以任何合适的方式突出显示或指示沿路线的街道、道路、公路和机动路线中的每一个。同样,路线的每个路段可以包括对应路段的相应运输方式的指示。例如,路线的第一路段可以用指示第一路段的步行方向的虚线表示,而路线的第二路段可以用指示第二路段的行进方向的实线表示。
在一些实施例中,当用户选择包括特定乘车服务提供商和乘车服务类型的推荐的多种方式的路线时,地图应用程序128可以仅呈现所选择的乘车服务提供商和乘车服务类型的乘车服务数据。例如,当用户或服务器装置104从若干个候选乘车中选择特定乘车时,地图应用程序128可以请求所选乘车的乘车服务数据。在其他实施例中,地图应用程序128呈现每个乘车服务提供商和乘车服务类型的乘车服务数据,以允许用户有另外的机会来选择乘车服务提供商和乘车服务类型。
图7示出了在地图应用程序内提供乘车服务而无需将用户引导到单独的乘车服务应用程序的示例方法900的流程图;该方法可以以存储在计算机可读存储器中并且可以在客户端计算装置102的一个或多个处理器上执行的指令集实现。例如,该方法可以由存储在客户端计算装置上的应用程序(例如地图应用程序128)实现。在其他实施例中,该方法可以由服务器装置104或服务器装置104和客户端计算装置102的组合来实现。
在框902处,选择从起始位置到目的地位置的路线,该路线至少包括乘车服务所覆盖的路段。例如,地图应用程序128可以呈现到目的地位置的若干个推荐的多种方式的路线,并且用户可以通过例如触摸选择路线的指示来选择推荐的多种方式的路线之一,如上参考图6所述。在另一个示例中,地图应用程序128可以包括用于请求去往所选择的目的地位置的行进方向的用户控件。当用户经由用户控件请求行进方向时,地图应用程序128可以提供用于选择包括乘车服务模式的运输方式的用户控件。
当选择乘车服务模式时,地图应用程序128可以调用一个或若干个乘车服务API208,以与相应的乘车服务提供商进行通信以请求乘车服务(框904)。例如,地图应用程序128可以使用每个乘车服务API 208来提供乘车服务请求,以及用户的当前位置和目的地位置。然后,乘车服务API 208可以将乘车服务请求转发到对应的乘车服务应用程序126或乘车服务提供商服务器106,后者可以进而向乘车服务API 208提供乘车服务信息,然后将该乘车服务API 208转发到地图应用程序128(框906)。乘车服务信息可以包括可用的乘车服务类型、通过每种类型的乘车服务的预计到达时间、每种类型的乘车服务的估算价格、该区域中的车辆/驾驶员的估算,等等。
除了提供乘车服务信息外,乘车服务提供商还可以经由乘车服务API 208提供样式或可视化信息以及定制的布局,以便在地图显示中呈现乘车服务信息,在地图显示上呈现其他元素,或在地图显示上渲染乘车的任何合适的可视化。下面参照图9-13B对此进行更详细的描述。更具体地,地图应用程序128可以保留对地图显示上的某些组件的控制,同时允许乘车服务提供商为地图显示上的其他组件定制的布局。例如,地图应用程序128可以保留对包含在地图显示内的底图的控制,但可以允许乘车服务提供商定制搜索栏,使该搜索栏叠盖地图显示的顶部的底图,或者定制矩形布局,使该矩形布局叠盖地图显示的底部的底图。定制的布局不一定在地图显示的顶部或底部,并且乘车服务提供商也可以在地图显示内定制的布局的位置。除了定制的布局外,乘车服务提供商还可提供样式信息,以调整由地图应用程序128控制的地图显示上的元素的样式。例如,乘车服务提供商可以提供样式或可视化信息,以用于渲染底图中的元素,例如底图的背景色,公路和街道的颜色,地图标签的字体大小、颜色和类型,底图的配色方案、线粗或笔画类型,图形(例如代表车辆在地图上的当前位置车辆图标、代表用户的当前位置的图标、代表接载位置的接载位置图标、代表下客位置的下客位置图标、代表客户端计算装置的当前取向的当前取向图标),或其他任何视觉属性。
在任何情况下,地图应用程序128可随后在地图显示上呈现乘车服务信息(框908),类似于图9所示的显示。更具体地,对于每个乘车服务提供商,地图应用程序128可以呈现乘车服务提供商的指示,例如乘车服务提供商的名称和徽标(logo)。地图应用程序128还可以呈现乘车服务提供商提供的乘车服务类型的指示(例如,拼车乘车服务、出租车乘车服务、豪华轿车乘车服务、班车乘车服务、超大型车辆服务等),以及每种乘车服务类型的价格和等待时间估算。当地图应用程序128在地图显示上显示多个乘车服务提供商的乘车服务信息时,用户可以经由用户控件选择乘车服务提供商之一,例如触摸选择乘车服务提供商的指示。响应于选择乘车服务提供商,地图应用程序128可以呈现由所选择的乘车服务提供商提供的乘车服务类型的指示以及每种乘车服务类型的价格和等待时间估算。用户还可以经由用户控件选择乘车服务类型,例如触摸选择乘车服务类型的指示。
此外,地图应用程序128可以用相应的样式或可视化信息以及来自对应的乘车服务提供商的定制的布局呈现每个乘车服务提供商的乘车服务信息。因此,地图应用程序128可以根据接收到的样式或可视化信息来重新渲染地图显示。在一些实施例中,当用户选择候选乘车服务提供商之一时,地图应用程序128调整地图显示以包括所选择的乘车服务提供商的样式信息和定制的布局。然后,当用户选择另一个乘车服务提供商时,地图应用程序128会更改地图显示,以包括其他乘车服务提供商的样式信息和定制的布局。例如,Rider可以提供粉红色的车辆图标、底图的深蓝色背景色、代表用户的当前位置的三角形图标、以及用于选择乘车服务类型的定制的布局,其中用户可提供滑动手势以在地图显示上查看新的乘车服务类型。定制的布局还可以包括图标,例如,以在经济型或高级乘车之间进行选择,在乘车上的若干个乘客之间分摊车费,或为团体订购乘车。
在框910处,地图应用程序128接收对乘车服务提供商和乘车服务类型的选择。例如,用户可以通过触摸选择用户控件(例如RiderPool图标或“选择RiderPool”按钮)从Rider选择名为RiderPool的拼车服务。结果,地图应用程序128呈现包含用于选择接载位置的用户控件的接载请求显示,类似于图12A所示的显示。用户控件可以是图钉或其他图标,其被放置在地图显示上的默认接载位置。例如,默认接载位置可以是用户的当前位置,也可以是推荐的接载位置。
然后,用户可以通过例如将用户控件拖动到地图显示上的另一个位置来调整接载位置。在一些实施例中,接载请求显示包括当用户将图钉移动到另一个位置时保留在接载请求显示上的推荐的接载位置的指示,以便用户稍后可以选择推荐的接载位置。推荐的接载位置的指示可以包括从用户的当前位置到推荐的接载位置的距离的指示,以及与推荐的接载位置相关联的时间和费用节省量的指示。例如,在有多条单向街道的区域中,地图应用程序128可能会推荐在允许驾驶员在目的地位置的方向上行进的街道处的接载位置,使得驾驶员在接载用户后无需进行不必要的转弯。在另一示例中,可以基于交通来确定推荐的接载位置,以避免交通拥堵的街道,以使费用最小化。地图应用程序128可以在用户的当前位置的步行距离或阈值距离内(例如,在500或1000英尺内)标识推荐的接载位置,以使乘车的时间和/或费用最小化。
另外,接载请求显示可以包括在接载请求显示的一部分中的接载位置周围区域的三维街道级视图的预览,以便用户可以容易地在接载位置找到驾驶员。预览可以包括可选择的用户控件,以便在被选择时,接载请求显示呈现接载位置周围区域的三维全景街道级视图的全屏视图。在一些实施例中,接载请求显示可以在底图上的固定的预先定义位置(例如,对应于接载位置的位置)处叠盖街道级视图。此外,接载请求显示包括来自乘车服务提供商的样式信息和定制的布局。例如,乘车服务提供商可以提供用于确认接载位置的用户控件,例如确认按钮或其他合适的图标,并且可以指示用户控件在接载请求显示内的位置(例如,低于底图在接载请求显示的底部,高于底图在接载请求显示的顶部,等等)。在一些实施例中,接载请求显示或任何其他合适的显示还可以包括下客位置周围区域的三维街道级视图的预览。预览可以包括可选择的用户控件,以便在被选择时,对应的显示呈现下客位置周围区域的三维全景街道级视图的全屏视图。在一些实施例中,对应的显示可以在底图上的固定的预先定义位置(例如,对应于下客位置的位置)处叠盖街道级视图。
因此,地图应用程序128将乘车的接载位置标识为当选择了确认用户控件时用于选择接载位置的用户控件的位置。在框912处,地图应用程序128调用乘车服务API 208,以向乘车服务提供商提供接载请求以及所选择的乘车服务类型和接载位置。在一些实施例中,地图应用程序128还提供诸如用户登录信息的乘车标识符,用于将用户登录到由乘车服务提供商维护的用户简档中。例如,用户简档可以包括用户的付款方式、用户的姓名、用户的电子邮件地址,用户的电话号码、用户的照片(以供驾驶员识别用户)、用户等级、当前正在进行的乘车或用户正在请求的乘车的乘车ID、或任何其他合适的用户简档信息。然后,乘车服务API 208可以将乘车服务请求转发到对应的乘车服务应用程序126或乘车服务提供商服务器106,后者可以进而向乘车服务API 208提供乘车确认信息,然后将乘车服务API208转发到地图应用程序128(框914)。
乘车确认信息可以包括用于取回乘车的状态信息的乘车ID、所选择的驾驶员的驾驶员标识信息(例如,驾驶员的姓名、车辆厂名、型号、以及颜色、车牌号,等等)、更新的价格估算、更新的等待时间、以及更新的乘车持续时间。乘车服务提供商还可以经由乘车服务API 208提供样式信息和定制的布局,以在地图显示上呈现乘车确认信息或在地图显示上呈现其他元素。
在框916处,地图应用程序128在地图显示上呈现乘车确认信息,类似于图13A所示的显示。更具体地,地图应用程序128可以呈现驾驶员到达接载位置的估算的等待时间的指示(例如,“驾驶员在1分钟内到达”)、用户的当前位置的指示、接载位置的指示、以及驾驶员在底图上的位置的指示。地图应用程序128还可以呈现用于联系驾驶员的用户控件。此外,地图应用程序128可以用接收到的样式信息和定制的布局呈现乘车服务提供商的乘车确认信息。
在框918处,地图应用程序128将状态请求周期性地发送到乘车服务提供商,例如通过调用乘车服务API 208和提供乘车ID。状态请求可以每五秒、每十秒、每30秒、每分钟等发送(框922)。然后,乘车服务提供商可以返回状态,例如等待驾驶员接受乘车、等待驾驶员到达接载位置、乘车进行中、乘车完成、或任何其他合适的状态。当状态为等待驾驶员到达接载位置或乘车进行中时,乘车服务提供商还可以返回驾驶员的位置。然后,地图应用程序128在地图显示上呈现状态指示符和/或驾驶员的位置(框920)。例如,当状态为等待驾驶员接受乘车时,地图显示可以包括指示驾驶员尚未接受乘车的标语(banner)。当状态为等待驾驶员到达接载位置时,地图显示可以包括指示驾驶员到达接载位置的估算的等待时间的标语和驾驶员在底图上的位置的指示,例如驾驶员的位置处的车辆图标。另外,当状态为乘车进行中时,地图显示可以包括驾驶员在底图上的位置的指示。地图应用程序128可以继续发送状态请求直到状态为乘车完成(框924)。
在一些场景下,用户可以从地图应用程序128的乘车服务部分转换到其他地理区域的地图视图,以搜索兴趣点或其他位置,或在订购乘车服务或在乘车中时执行其他地图功能。当用户转换到其他地图功能时,地图应用程序128可以继续从乘车服务提供商接收关于乘车状态的状态信息。在一些实施例中,地图应用程序128呈现叠盖地图显示的标语,其中标语指示乘车的状态。例如,标语可以声称“乘车进行中。10分钟路程”。标语可以包括用户控件,当其被选择时,将地图应用程序128转换回乘车服务部分以查看关于乘车的细节、改变目的地位置、取消乘车,等等。
图8示出了当用户转换到其他地图功能时呈现乘车状态信息的示例方法1000的流程图。该方法可以以存储在计算机可读存储器中并且可以在客户端计算装置102的一个或多个处理器上执行的指令集实现。例如,该方法可以由存储在客户端计算装置上的应用程序(例如地图应用程序128)实现。在其他实施例中,该方法可以由服务器装置104、或者服务器装置104和客户端计算装置102的组合来实现。
在框1002处,地图应用程序128在地图显示上呈现状态指示符或请求乘车前往目的地位置的驾驶员的位置。状态可以是等待驾驶员接受乘车、等待驾驶员到达接载位置、乘车进行中、乘车完成、或任何其他合适的状态。然后,在框1004处,地图应用程序128利用与乘车服务部分不同的地图功能接收对附加地图数据的请求。例如,请求可以是地理搜索查询、对显示地理区域的请求、或对去往另一个目的地位置的行进方向的请求。在任何情况下,地图应用程序128可以利用乘车状态指示符在地图显示中呈现被请求的地图数据,例如叠盖地图显示的标语,该标语指示乘车状态(框1006)。标语可以包括用户控件,当其被选择时,将地图应用程序128转换回乘车服务部分以查看关于乘车的细节、改变目的地位置、取消乘车,等等。响应于接收到对用户控件的选择(框1008),地图应用程序128确定乘车是否已经完成(框1010)。如果乘车尚未完成,则地图应用程序128转换回到乘车服务部分(框1002)。
图9-13B示出了用于经由地图应用程序128提供乘车服务的示例地图显示1400-1800B,例如乘车请求显示(图9、11A、11B)、接载请求显示(图10、12A-C)和等待乘车显示(图13A、13B)。地图显示中的每一个可以由地图应用程序128呈现,并且可以包括通过调用一个或若干个乘车服务API从一个或若干个乘车服务提供商获得的乘车服务数据。另外,地图显示中的每一个可以包括底图,例如如图9所示的底图1440以及叠盖底图且由乘车服务提供商提供的定制的布局组件,例如图11A所示的布局组件1602、1608。此外,底图中的元素可以由乘车服务提供商样式化。例如,乘车服务提供商可以提供用于包含在底图中的元素的样式信息,例如底图的背景色,高速公路和街道的颜色,地图标签的字体大小、颜色和类型,代表地图上的车辆的图标、代表用户的当前位置的图标、代表目的地位置的图钉,等等。
图9示出了在地图应用程序128中选择乘车服务的示例性显示1400。显示1400可以出现在便携式装置上,例如图1所示的客户端计算装置102。显示1400可以包括用于输入起始位置的用户控件1402、用于输入目的地位置的用户控件1404、用于选择从起始位置行进到目的地位置的运输方式的用户控件1406、以及以用户的当前位置1408为中心的底图1440。在一些实施例中,默认的初始位置1402可以是用户的当前位置。当用户选择乘车服务运输方式1442或选择具有包括由乘车服务覆盖的路段的多种方式的行进方向的推荐的运输方式(未示出)时,显示1400可以包括叠盖底图1440的定制的布局1410,其呈现一个或若干个乘车服务提供商1420、1422的指示。
在示例显示1400中,乘车服务提供商包括Rider 1420和DriverCo 1422。每个乘车服务提供商可以提供定制的布局,并且显示1400可以呈现由所选择的乘车服务提供商定制的布局。例如,用户可以通过触摸选择显示1400上的Rider的指示来选择Rider 1420,并且显示1400可以呈现由Rider定制的布局1410。定制的布局1410包括乘车服务1430的类型(RiderPool)的指示和RiderPool服务的可选择的选项,例如经济或高级,在乘客之间分摊车费,为大团体请求RiderPool,等等。在定制的布局1410中用户可以执行滑动手势以查看由Rider提供的其他类型的乘车服务。但是,这仅是一种示例布局,仅用于说明目的。在其他定制的布局中,例如,显示1400可以同时包括每种类型的乘车服务1430的指示,并且用户可以通过触摸选择对应的指示来选择乘车服务的类型。在任何情况下,定制的布局1410还包括用户控件1432,以选择由Rider提供的RiderPool服务。
图10示出了用于在地图应用程序128中选择接载位置的示例性显示1500。显示1500可以出现在便携式装置上,例如图1所示的客户端计算装置102。如图9,显示1500可以包括以用户的当前位置1520为中心的底图1502。显示还可以包括用户选择接载位置的用户控件1522,例如图钉。在一些实施例中,默认接载位置可以是用户的当前位置1520,且用户可以拖动图钉以为接载位置选择另一位置。显示1500还包括显示为圆圈的推荐的接载位置1504和1506的指示。可以为推荐的接载位置之一提供接载位置周围区域的三维街道级视图1508的预览,以便用户可以容易地在接载位置找到驾驶员。预览可以包括可选择的用户控件,以便在被选择时,接载请求显示呈现接载位置周围区域的三维街道级视图的全屏视图。此外,显示1500可以包括乘车服务提供商采用的可用的车辆1510的数量的指示。虽然地图显示上的车辆的位置可能无法准确代表乘车服务提供商所使用的车辆的位置,但地图显示上的车辆数量可用于向用户显示区域中的车辆的数量的近似值。
一些实施例中,地图应用程序128识别对应于接载位置或者在接载位置的阈值距离内(例如,100英尺)的地标。然后,地图应用程序128可以在三维街道级视图1508中包含标识的地标的街道级图像。附加地或替代地,地图应用程序128可以经由界面提供地标的指示,例如“在迪士尼商店前接载”。例如,地图应用程序128可以调用由乘车服务提供商公开的API以获得接载位置的地理坐标或街道地址(例如,"123Elm St.")并标识对应于这些坐标或该地址的合适的地标。为此,地图应用程序128可以将坐标和/或街道地址发送到地图数据服务器,或者在一些情况下依赖于缓存的地图数据和街道级图像。地图数据服务器或地图应用程序128(当使用缓存数据时)可以基于以下属性来标识地标,例如显著度(例如,地标相对于地标附近其他物体的相对大小,或地标与附近物体之间的颜色差异)、能见度(例如,在接载位置和地标之间有直接的视线)、受欢迎程度(例如,用户生成的内容的数量,例如与地标相关的照片、评论等),或其他合适的信号。此外,在一些实施例中,无论用户在接载位置相对于地标的预期取向如何,地图数据服务器或地图应用程序128都可以选择地标位置的街道级图像以面对包含在视图1508中的地标。例如,地图数据服务器或地图应用程序128可以提供纪念碑的图像,并生成通知“在Elm St.123接载,在纪念碑街对面”。
图11A和11B示出了地图应用程序128中的示例乘车请求显示1600A、1600B,其包括由乘车服务提供商定制的布局组件。显示1600A、1600B可以出现在便携式装置上,例如图1所示的客户端计算装置102。如上所述,乘车服务提供商可以提供定制的布局和样式信息以呈现在地图应用程序128中。乘车请求显示1600A包括底图1604、叠盖底图1604的定制位置搜索组件1602、以及叠盖底图1608的定制第三方布局组件。乘车服务提供商可以以任何合适的方式定制这些组件1602、1608且可以调整组件1602、1608在乘车请求显示1600A内的位置。例如,Rider可以请求位置搜索组件1602呈现在乘车请求显示1600A的底部。在一个示例中,位置搜索组件1602包括用户控件,以提供起始位置、目的地位置、以及提供去往目的地位置的行进方向的运输方式。定制第三方布局组件1608包括由乘车服务提供商提供的每种乘车服务类型的可选择的指示以及每种乘车服务类型的价格估算和等待时间的指示。定制组件还可以包括图标、背景色、动画、或任何其他合适的图形元素。图11B示出了乘车请求显示1600B的示例定制的布局组件1602、1608。在乘车请求显示1600B中,定制位置搜索组件1602包括用于提供起始位置和目的地位置的用户控件。定制第三方布局组件1608包括可从乘车服务提供商获得的乘车服务类型的可选择的圆形指示1610a-e。定制第三方布局组件1608还包括价格估算、估算的等待时间和支付方式,以及用于请求所选择的乘车服务提供商和/或乘车服务类型的用户控件1612。
响应于接收到对用于请求所选择的乘车服务提供商和/或乘车服务类型的用户控件1612的选择,地图应用程序128呈现接载请求显示1700A-C,如图12A-12C所示。接载请求显示1700A-C可以出现在便携式装置上,例如图1所示的客户端计算装置102。接载请求显示1700A包括底图1702、接载位置布局组件1704和接载确认布局组件1706。在一些实施例中,接载确认布局组件1706可由所选择的乘车服务提供商定制。接载请求显示1700A还包括用户的当前位置1710的指示和用于选择接载位置的用户控件1712(例如图钉)。在一些实施例中,默认接载位置可以是用户的当前位置1710,且用户可以拖动图钉以为接载位置选择另一位置。接载请求显示1700A还包括所选择的接载位置周围或推荐的接载位置周围的区域的三维街道级视图1708的预览,以便用户可以容易地在接载位置找到驾驶员。预览可以包括可选择的用户控件,以便在被选择时,接载请求显示1700A呈现接载位置周围区域的三维街道级视图的全屏视图。
图12B示出了当用户1710位于机场并且有多个推荐的接载位置时的接载请求显示1700B的另一示例。推荐的接载位置在位置列表1714中显示为可用的接载区域。用户可以选择这些接载位置之一,并且使用接载确认布局组件1706来确认选择。图12C示出了当用户1710位于机场时的又一示例接载请求显示1700C。除了位置列表1714之外,接载请求显示1700C还包括用户控件1716,用于选择可以接载用户的几个楼层之一。例如,位置列表1714可以包括建筑物的第一楼层的第一组推荐的接载位置和建筑物的第二楼层的第二组推荐的接载位置。
响应于接收到对用于确认接载位置的用户控件1706的选择,地图应用程序128呈现等待乘车显示1800A、1800B,如图13A和13B所示。等待乘车显示1800A、1800B可以出现在便携式装置上,例如图1所示的客户端计算装置102。等待乘车显示1800A可以包括用户的当前位置1802的指示、车辆1804接载用户的指示、以及接载位置的指示。等待乘车显示1800A还可以包括到达布局组件1808,其包括驾驶员到达所选择的接载位置的估算的等待时间的指示。此外,等待乘车显示1800A包括联系驾驶员布局组件1810,具有联系驾驶员的用户控件。在一些实施例中,联系驾驶员布局组件1810可由所选择的乘车服务提供商定制。同样在一些实施例中,可以经由SMS应用或聊天应用来联系驾驶员。
图13B示出了当用户1802位于机场时呈现的另一等待乘车显示1800B。等待乘车显示1800B包括到达布局组件1808以及附加的指令布局组件1812,用于提供到接载位置的详细的步行方向。如图12C所示,等待乘车显示1800B包括用户控件1814,用于选择可以接载用户的若干个楼层之一。
附加的注意事项
以下附加的注意事项适用于前面的讨论。在整个说明书中,多个实例可以实现描述为单个实例的组件、操作或结构。尽管将一种或多种方法的各个操作图示和描述为单独的操作,但是可以同时执行一个或多个单独的操作,并且不需要按照所示顺序执行这些操作。在示例配置中呈现为单独的组件的结构和功能可以实现为组合的结构或组件。类似地,呈现为单个组件的结构和功能可以实现为单独的组件。这些和其他变型、修改、添加和改进落入本公开的主题的范围内。
另外,本文将某些实施例描述为包括逻辑或多个组件、模块或机制。模块可以构成软件模块(例如,存储在机器可读介质中的代码)或硬件模块。硬件模块是能够执行某些操作的有形单元,并且可以以某种方式配置或布置。在示例实施例中,一个或多计算机***(例如独立的、客户端或服务器计算机***)或计算机***的一个或多个硬件模块(例如,处理器或一组处理器)可以由软件(例如,应用程序或应用程序部分)配置为操作为执行本文所述的某些操作的硬件模块。
在各种实施例中,硬件模块可以机械地或电子地实现。例如,硬件模块可以包括永久配置的专用电路或逻辑(例如,作为专用处理器,比如现场可编程门阵列(FPGA)或专用集成电路(ASIC))以执行某些操作。硬件模块还可以包括可编程逻辑或电路(例如,包含在通用处理器或其他可编程处理器中),其由软件临时配置以执行某些操作。应当理解的是,在成本和时间方面的考虑可能决定以机械方式、在专用且永久配置的电路中、或在临时配置的电路(例如,由软件配置)中实现硬件模块的决定。
因此,术语“硬件”应理解为包含有形实体,是经过物理构造、永久配置(例如,硬接线)或临时配置(例如,编程)以某种方式操作或执行本文描述的某些操作的实体。如本文所使用的,“硬件实现的模块”是指硬件模块。考虑到其中硬件模块被临时配置(例如,编程)的实施例,每个硬件模块不需要在任何一个实例上及时配置或实例化。例如,在硬件模块包括使用软件配置的通用处理器的情况下,可以将通用处理器在不同时间配置为相应的不同的硬件模块。例如,可以相应地在处理器上配置软件,以在一个时间实例构成特定的硬件模块,并在不同的时间实例构成不同的硬件模块。
硬件模块可以向其他硬件提供信息,或从其他硬件接收信息。因此,所描述的硬件模块可以被认为是通信耦接的。如果同时存在多个这样的硬件模块,则可以通过连接硬件模块的信号传输(例如,通过适当的电路和总线)来实现通信。在其中在不同时间配置或实例化多个硬件模块的实施例中,例如,可以通过在多个硬件模块可以访问的存储器结构中存储和取回信息来实现这些硬件模块之间的通信。例如,一个硬件模块可以执行操作并将该操作的输出存储在与之通信耦接的存储器装置中。然后,另一硬件模块可以在以后的时间访问存储器装置以取回和处理所存储的输出。硬件模块还可以启动与输入或输出装置的通信,并且可以在资源(例如,信息的集合)上操作。
方法500、800、900和1000可以包含一个或多个功能块、模块、单独的功能或例程,它们以有形计算机可执行指令的形式存储在非暂时性计算机可读存储介质中,并使用计算设备(例如,如本文所述的服务器、个人计算机、智能电话、平板计算机、智能手表、移动计算设装置或其他个人计算装置)的处理器执行。例如,方法500、800、900和1000可以作为任何后端服务器(例如,如本文所述的地图数据服务器、导航服务器或任何其他类型的服务器计算装置)的一部分被包含,或作为此类环境的外部的模块的一部分。尽管为了便于解释可以参考其他附图来描述附图,但是方法500、800、900和1000可以与其他对象和用户界面一起使用。此外,尽管以上解释描述了由特定装置(例如客户端计算装置102和服务器装置104)执行的方法500、800、900和1000的步骤,但这仅出于说明目的。
本文处描述的示例方法的各种操作可以至少部分地由临时配置(例如,通过软件)或永久配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,此类处理器都可以构成处理器实现的模块,这些模块操作为执行一个或多个操作或功能。在一些示例实施例中,本文所指的模块可以包括处理器实现的模块。
类似地,本文描述的方法或例程可以至少部分地由处理器实现。例如,方法的至少一些操作可以由一个或多个处理器或者处理器实现的硬件模块执行。某些操作的性能可能会分布在一个或多个处理器之间,不仅驻留在单个计算机中,而是会部署在多个计算机上。在某些示例实施例中,一个或多个处理器可以位于单个位置(例如,在家庭环境、办公室环境中或作为服务器场),而在其他实施例中,处理器可以分布在多个位置。
一个或多个处理器也可以在“云计算”环境中或作为SaaS操作来支持相关操作的性能。例如,如上所述,至少一些操作可以由一组计算机(例如包括处理器的机器的示例)执行,这些操作可以经由网络(例如,互联网)并经由一个或多个适当的接口(例如,API)来访问。
更进一步,这些附图仅出于说明的目的描绘了示例环境的一些实施例。本领域技术人员将从下面的讨论中容易地认识到,在不脱离本文描述的原理的情况下,可以采用本文所示的结构和方法的替代实施例。
在阅读了本公开之后,本领域的技术人员将理解通过本文公开的原理用于在地图显示内定向用户的另外的替代结构和功能设计。因此,尽管已经图示和描述了特定的实施例和应用,但是应当理解,所公开的实施例不限于本文所公开的精确构造和组件。在不脱离所附权利要求书所限定的精神和范围的情况下,可以对本文公开的方法和装置的布置、操作和细节进行对本领域技术人员而言显而易见的各种修改、改变和变化。

Claims (16)

1.一种由便携式计算装置执行的用于提供与乘车服务相关的地图数据的方法,所述方法包括:
由一个或多个处理器经由用户界面提供交互式二维数字地图;
经由所述用户界面接收获取去往目的地的行进方向的请求;
由所述一个或多个处理器从乘车服务的第三方提供商获取从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分;
由所述一个或多个处理器获取所述接载位置或所述下客位置的街道级图像;
显示在所述数字地图上叠盖的针对所述接载位置或所述下客位置所获取的街道级图像的预览;以及
响应于经由所述用户界面检测到对所述街道级图像的预览的选择,将所述二维数字地图转换为街道级图像的交互式三维全景显示。
2.如权利要求1所述的方法,还包括:
自动标识靠近由所述提供商指示的所述接载位置或所述下客位置的地标;
其中显示针对所述接载位置或所述下客位置所获取的街道级图像包括显示所述自动标识的地标。
3.如权利要求2所述的方法,还包括:
由所述一个或多个处理器生成所述接载位置或所述下客位置的描述,所述描述包括对标识的地标的引用;以及
显示所述接载位置或所述下客位置的描述以及所述接载位置或所述下客位置的街道级图像。
4.如权利要求2所述的方法,还包括:
经由通信网络将由所述乘车服务的提供商指示的所述接载位置或所述下客位置发送给地图数据服务器;以及
从所述地图数据服务器接收所述地标的街道级图像。
5.如权利要求4所述的方法,其中将所述接载位置或所述下客位置发送给所述地图数据服务器包括指定一半径,在所述半径内,所述地图数据服务器将搜索靠近所述接载位置或所述下客位置的地标。
6.如权利要求1所述的方法,还包括:
由所述一个或多个处理器经由所述用户界面提供用于修改所述接载位置的交互式控件,以及
响应于接收对新的接载位置的选择,从所述乘车服务的提供商自动获取修改的乘车的指示。
7.如权利要求1所述的方法,还包括由所述一个或多个处理器提供与所述数字地图上的乘车相对应的所述路线的至少一部分的可视化。
8.如权利要求1所述的方法,其中,显示针对所述接载位置或所述下客位置所获取的街道级图像包括:在所述数字地图上的固定的预先定义的位置处叠盖所述接载位置或所述下客位置的街道级图像。
9.一种用于提供与乘车服务相关的地图数据的计算装置,包括:
一个或多个处理器;
用户界面;
非暂时性计算机可读介质,其上存储有指令,当所述指令由所述一个或多个处理器执行时,使得所述计算装置:
经由所述用户界面提供交互式二维数字地图,
经由所述用户界面接收获取去往目的地的行进方向的请求;
从乘车服务的第三方提供商获取从接载位置到下客位置的乘车的指示,以穿越路线的至少一部分;
获取所述接载位置或所述下客位置的街道级图像;
显示在所述数字地图上叠盖的针对所述接载位置或所述下客位置所获取的街道级图像的预览;以及
响应于经由所述用户界面检测到对所述街道级图像的预览的选择,将二维数字地图转换为街道级图像的交互式三维全景显示。
10.如权利要求9所述的计算装置,其中,所述指令使得所述计算装置:
自动标识靠近由所述提供商指示的所述接载位置或所述下客位置的地标;
其中,显示针对所述接载位置或所述下客位置所获取的街道级图像包括显示自动标识的地标。
11.如权利要求10所述的计算装置,其中,所述指令使得所述计算装置:
生成所述接载位置或所述下客位置的描述,所述描述包括对标识的地标的引用,并且
显示所述接载位置或所述下客位置的描述以及所述接载位置或所述下客位置的街道级图像。
12.如权利要求10所述的计算装置,其中,所述指令使得所述计算装置:
经由通信网络将由所述乘车服务的提供商指示的所述接载位置或所述下客位置发送给地图数据服务器;以及
从所述地图数据服务器接收所述地标的街道级图像。
13.如权利要求12所述的计算装置,其中,为将所述接载位置或所述下客位置发送给所述地图数据服务器,所述指令使得所述计算装置指定一半径,在所述半径内,所述地图数据服务器将搜索靠近所述接载位置或所述下客位置的地标。
14.如权利要求9所述的计算装置,其中,所述指令使得所述计算装置:
经由所述用户界面提供用于修改所述接载位置的交互式控件,并且
响应于接收对新的接载位置的选择,从所述乘车服务的提供商自动获取修改的乘车的指示。
15.如权利要求9所述的计算装置,其中,所述指令使得所述计算装置提供与所述数字地图上的乘车相对应的所述路线的至少一部分的可视化。
16.如权利要求9所述的计算装置,其中,为显示针对所述接载位置或所述下客位置所获取的街道级图像,所述指令使得所述计算装置在所述数字地图上的固定的预先定义的位置处叠盖所述接载位置或所述下客位置的街道级图像。
CN202311544062.4A 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像 Pending CN117571009A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762599262P 2017-12-15 2017-12-15
US62/599,262 2017-12-15
CN201880039074.2A CN110809706B (zh) 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像
PCT/US2018/065647 WO2019118828A1 (en) 2017-12-15 2018-12-14 Providing street-level imagery related to a ride service in a navigation application

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201880039074.2A Division CN110809706B (zh) 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像

Publications (1)

Publication Number Publication Date
CN117571009A true CN117571009A (zh) 2024-02-20

Family

ID=65019570

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311544062.4A Pending CN117571009A (zh) 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像
CN201880039074.2A Active CN110809706B (zh) 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201880039074.2A Active CN110809706B (zh) 2017-12-15 2018-12-14 在导航应用程序中提供与乘车服务相关的街道级图像

Country Status (5)

Country Link
US (2) US11099025B2 (zh)
EP (2) EP3601952B1 (zh)
JP (2) JP7187494B2 (zh)
CN (2) CN117571009A (zh)
WO (1) WO2019118828A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10255794B1 (en) * 2017-11-28 2019-04-09 Titan Health & Security Technologies, Inc. Systems and methods for providing augmented reality emergency response solutions
KR102040566B1 (ko) * 2018-01-04 2019-11-06 라인플러스 주식회사 명확한 픽업 장소를 제공하는 방법과 시스템 및 비-일시적인 컴퓨터 판독 가능한 기록 매체
US11526822B2 (en) * 2020-02-10 2022-12-13 Bank Of America Corporation Dynamic resource allocation engine
JP7276229B2 (ja) * 2020-04-02 2023-05-18 トヨタ自動車株式会社 情報提供装置、情報提供システム、情報提供プログラム、及び、情報提供方法
CN113945220A (zh) * 2020-07-15 2022-01-18 奥迪股份公司 导航方法和装置
US20210116261A1 (en) * 2020-12-26 2021-04-22 Francesc Guim Bernat Systems and methods for vehicle-occupancy-based and user-preference-based smart routing and autonomous volumetric-occupancy measurement

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6892135B1 (en) * 2001-12-21 2005-05-10 Garmin Ltd. Navigation system, method and device with automatic next turn page
US8843309B2 (en) * 2005-04-21 2014-09-23 Microsoft Corporation Virtual earth mapping
JP2011515717A (ja) 2008-03-24 2011-05-19 グーグル インコーポレイテッド 運転指図内のパノラマ画像
US20100250581A1 (en) * 2009-03-31 2010-09-30 Google Inc. System and method of displaying images based on environmental conditions
US9766089B2 (en) * 2009-12-14 2017-09-19 Nokia Technologies Oy Method and apparatus for correlating and navigating between a live image and a prerecorded panoramic image
US9582166B2 (en) * 2010-05-16 2017-02-28 Nokia Technologies Oy Method and apparatus for rendering user interface for location-based service having main view portion and preview portion
KR101909742B1 (ko) * 2010-06-15 2018-10-18 티켓마스터 엘엘씨 컴퓨터 도움 이벤트 및 현장 셋업을 위한 방법 및 시스템 그리고 모델링 및 인터액티브 지도들
US9361283B2 (en) * 2011-11-30 2016-06-07 Google Inc. Method and system for projecting text onto surfaces in geographic imagery
US20130162665A1 (en) * 2011-12-21 2013-06-27 James D. Lynch Image view in mapping
JP6143214B2 (ja) 2011-12-27 2017-06-07 株式会社Intelade 携帯端末を用いたタクシー車両の呼び寄せシステム
US20150153933A1 (en) 2012-03-16 2015-06-04 Google Inc. Navigating Discrete Photos and Panoramas
US20130290040A1 (en) 2012-04-25 2013-10-31 Alexander Perry Method and System for Arranging Taxi and Transportation Services
US9477983B2 (en) 2012-05-04 2016-10-25 Gt Gettaxi Limited Mechanisms for ordering transportation vehicles
US9094807B2 (en) * 2012-05-23 2015-07-28 Qualcomm Incorporated Methods and apparatus for providing an incentivized cooperative system for accessing radio access networks
US9047691B2 (en) * 2012-06-05 2015-06-02 Apple Inc. Route display and review
US9043150B2 (en) 2012-06-05 2015-05-26 Apple Inc. Routing applications for navigation
US10176633B2 (en) * 2012-06-05 2019-01-08 Apple Inc. Integrated mapping and navigation application
KR102021050B1 (ko) * 2012-06-06 2019-09-11 삼성전자주식회사 내비게이션 정보를 제공하는 방법, 기계로 읽을 수 있는 저장 매체, 이동 단말 및 서버
US9256983B2 (en) * 2012-06-28 2016-02-09 Here Global B.V. On demand image overlay
GB201300006D0 (en) 2013-01-01 2013-02-13 Tomtom Dev Germany Gmbh Vehicle management system
CA2897966C (en) 2013-02-26 2023-10-31 Polaris Industries Inc. Recreational vehicle interactive telemetry, mapping, and trip planning system
US8909475B2 (en) 2013-03-08 2014-12-09 Zzzoom, LLC Generating transport routes using public and private modes
US9483117B2 (en) * 2013-04-08 2016-11-01 Nokia Technologies Oy Apparatus, method and computer program for controlling a near-eye display
US20150002539A1 (en) * 2013-06-28 2015-01-01 Tencent Technology (Shenzhen) Company Limited Methods and apparatuses for displaying perspective street view map
KR102207975B1 (ko) * 2014-06-25 2021-01-25 한상우 노선 버스 예약 시스템 및 예약 좌석변경 알림서비스 제공방법
CN106663307A (zh) 2014-08-04 2017-05-10 优步技术公司 确定和提供预定位置数据点到服务提供者
US10620010B2 (en) 2015-02-05 2020-04-14 Moovit App Global Ltd Public and ordered transportation trip planning
US9417087B1 (en) * 2015-02-06 2016-08-16 Volkswagen Ag Interactive 3D navigation system
US9534913B2 (en) * 2015-04-09 2017-01-03 Mapquest, Inc. Systems and methods for simultaneous electronic display of various modes of transportation for viewing and comparing
US20170059347A1 (en) 2015-08-28 2017-03-02 Google Inc. Determining Improved Pick-Up Locations
US9702722B2 (en) * 2015-09-26 2017-07-11 Volkswagen Ag Interactive 3D navigation system with 3D helicopter view at destination
GB2558794A (en) 2015-11-26 2018-07-18 Beijing Didi Infinity Technology & Dev Co Ltd Systems and methods for allocating sharable orders
US10169804B2 (en) 2016-02-09 2019-01-01 Conduent Business Services, Llc Methods and systems for transportation service recommendation
CN107437183B (zh) 2016-05-25 2021-06-04 北京嘀嘀无限科技发展有限公司 一种上车乘客身份的确认方法及***
US10024683B2 (en) * 2016-06-06 2018-07-17 Uber Technologies, Inc. User-specific landmarks for navigation systems
US11562300B2 (en) 2016-06-10 2023-01-24 Conduent Business Services, Llc System and method for optimal automated booking of on-demand transportation in multi-modal journeys
US10168164B2 (en) * 2016-06-11 2019-01-01 Apple Inc. Integrating ride hailing services into a navigation application
US9791291B1 (en) 2016-09-26 2017-10-17 Uber Technologies, Inc. Modifying map configurations based on established location points
US20180211541A1 (en) 2017-01-25 2018-07-26 Via Transportation, Inc. Prepositioning Empty Vehicles Based on Predicted Future Demand
US10082793B1 (en) 2017-03-21 2018-09-25 GM Global Technology Operations LLC Multi-mode transportation planning and scheduling
US10268987B2 (en) 2017-04-19 2019-04-23 GM Global Technology Operations LLC Multi-mode transportation management
US9965960B1 (en) 2017-08-07 2018-05-08 Lyft, Inc. Facilitating transportation services by generating a directional indicator between a requester and a transportation vehicle
US11189167B2 (en) 2017-11-01 2021-11-30 Avis Budget Car Rental, LLC Connected user communication and interface system with shuttle tracking application

Also Published As

Publication number Publication date
US11802778B2 (en) 2023-10-31
JP2020531937A (ja) 2020-11-05
CN110809706B (zh) 2023-11-14
US11099025B2 (en) 2021-08-24
CN110809706A (zh) 2020-02-18
EP3601952B1 (en) 2023-03-15
US20210348939A1 (en) 2021-11-11
EP3601952A1 (en) 2020-02-05
JP7187494B2 (ja) 2022-12-12
WO2019118828A1 (en) 2019-06-20
EP4220090A1 (en) 2023-08-02
US20190186943A1 (en) 2019-06-20
JP7389211B2 (ja) 2023-11-29
JP2023026433A (ja) 2023-02-24

Similar Documents

Publication Publication Date Title
JP7463109B2 (ja) ナビゲーションアプリケーションにおける配車サービスの選択肢のインタラクティブリスト
CN110809706B (zh) 在导航应用程序中提供与乘车服务相关的街道级图像
US20230342674A1 (en) Multi-Modal Directions with a Ride Service Segment in a Navigation Application
CA3070906C (en) Pickup location selection and augmented reality navigation
US11506509B2 (en) Customizing visualization in a navigation application using third-party data
CA2925292C (en) Systems and methods for providing navigation data to a vehicle
WO2019246063A1 (en) Pre-fetching map data
JP6785871B2 (ja) ナビゲーション指示の提供
KR20200107763A (ko) 여행스케줄링 기반의 쇼퍼서비스 방법 및 시스템
KR102069304B1 (ko) 여행스케줄링 기반의 쇼퍼서비스 방법 및 시스템

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