gpt4 book ai didi

android - 使用 Uber API 获取用户端点位置

转载 作者:行者123 更新时间:2023-11-29 00:04:15 26 4
gpt4 key购买 nike

我一直在研究 UBER API,我想知道是否有一种方法可以在我的 Android/iOS 应用程序中运行一项服务,我的应用程序可以在其中获取用户下车位置。

我现在考虑的方式是以下场景:- 用户乘坐优步汽车前往目的地- 我的应用程序收到关于下车位置(lat,long)位置的通知- 我的应用通过通知建议他们在下车地点附近可以做的事情。

这样的用例可能吗?

我对this API感兴趣

特别是在这些信息中:“目的地”:{ “纬度”:37.7766874, “经度”:-122.394857, “埃塔”:19

谢谢。

最佳答案

这样的用例是可能的,并在以下链接中有更详细的解释:

要构建此旅行体验,您必须请求 all_trips OAuth scope来自用户:

all_trips

Get details of the trip that the user is currently taking, regardless of how it was requested (via the Uber app or a third-party application).

Privileged

这是一个特权范围,因为您需要首先从 Uber 请求访问权限,才能在您在 Uber Developer Dashboard 中定义的应用程序中使用该范围。

然后在您使用 POST /v1/requests 代表用户发出优步乘车请求后, 您可以调用 GET /v1/requests/currentGET /v1/requests/{request_id}获取行程详情:

{
"request_id":"17cb78a7-b672-4d34-a288-a6c6e44d5315",
"status":"accepted",
"location":{
"latitude":37.7886532015,
"longitude":-122.3961987534,
"bearing":135
},
"pickup":{
"latitude":37.7872486012,
"longitude":-122.4026315287,
"eta":5
},
"destination":{
"latitude":37.7766874,
"longitude":-122.394857,
"eta":19
},
"driver": {
"phone_number": "(555)555-5555",
"rating": 5,
"picture_url": "https:\/\/d1w2poirtb3as9.cloudfront.net\/img.jpeg",
"name": "Bob"
},
"vehicle":{
"make": "Bugatti",
"model": "Veyron",
"license_plate": "I<3Uber",
"picture_url": "https:\/\/d1w2poirtb3as9.cloudfront.net\/car.jpeg"
},
"surge_multiplier":1.0,
"eta": 5
}
  • 如果您的应用不发出乘车请求,您必须轮询 GET /v1/requests/current端点。参见 thisthis最佳实践。

  • 如果您的应用发出乘车请求,上述/v1/requests 端点可以与 Webhooks 结合使用事件驱动机制,以便在您的服务器上通知您行程的 status has been updated或者收据已经准备好,而不是你必须每 3-5 秒轮询一次以获得尽可能最新的详细信息。

当您通过 webhook 收到来自 Uber 的通知时,您可以调用 GET /v1/requests/currentGET /v1/requests/{request_id}端点。

然后,您需要使用收到的数据通知您的 Android 服务(通过服务器到客户端的通信机制,例如 websocket、推送通知等)优步提供了新信息并基于您向用户显示的信息给定您要使用的“旅行上下文”数据的相关信息,例如:
- 当前位置(纬度/经度)
- 上车地点(纬度/经度)
- 预计到取车时间(汽车到达时)
- 目的地位置(纬度/经度)
- 到达目的地的预计到达时间(当用户在车里时)

webhook 接收以下事件:

  • REQUESTS.STATUS_CHANGED

    For all Requests made by your application on behalf of Uber riders, we will make a request to your WEBHOOK URL whenever its status changes. This can help you notify the user or change the state of your app to reflect a status change without continuously polling the /v1/requests endpoint.

  • REQUESTS.RECEIPT_READY

    For all Requests made by your application on behalf of Uber riders we will make a request to your WEBHOOK URL whenever a Request Receipt is available. This will allow you to show your user the details of their fare and how much they were charged as soon as their Receipt is available. If the rider cancels after the grace period, and they are charged, a receipt will still be available showing that charge.

    To get access to a Request Receipt resource, the user must have authorized your application to have access to the request_receipt scope.

Uber request states

关于android - 使用 Uber API 获取用户端点位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35204288/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com