【问题标题】:Uber Deeplinking on iOSiOS 上的 Uber 深度链接
【发布时间】:2014-09-25 23:53:05
【问题描述】:

我正在尝试生成一个深层链接,该链接将打开应用程序,将上车地点设置为当前位置,并将下车地址设置为 Uber 总部。

这是我所拥有的:

uber://?action=setPickup&pickup=my_location&dropoff[formatted_address]=1455%20Market%20St%2C%20San%20Francisco%2C%20CA%2094103

很遗憾,应用程序中没有预先填写任何目的地地址。

【问题讨论】:

  • 对于那些想要尝试的人,Uber API 深度链接文档是:here。 (乍一看,OP 的 URL 看起来很合理。)
  • 谢谢达伦,这是我从中获得深度链接结构的地方,但它看起来并不工作。另外,我还没有找到一种方法来测试目标地址是否是在不请求优步和取消的情况下预先填写的,这使得测试过程不太理想。
  • 我也会引导你到这个帖子:*.com/questions/25129220/uber-ios-app-url-scheme
  • 这对我来说也失败了。我认为这行不通。 Uber iOS 应用似乎拒绝了参数,只是将默认上车地点显示为您的当前位置。
  • @Romain 你解决了这个问题吗?我也有同样的问题。

标签: ios deep-linking


【解决方案1】:

嘿,我遇到了同样的问题,这就是我让它工作的方式。首先,您需要将您的客户端 ID 添加到 url。所以在你的情况下改变

uber://?action=setPickup&pickup=my_location&dropoff[formatted_address]=1455%20Market%20St%2C%20San%20Francisco%2C%20CA%2094103

uber://?client_id=YOUR_CLIENT_ID&action=setPickup&pickup=my_location&dropoff[formatted_address]=1455%20Market%20St%2C%20San%20Francisco%2C%20CA%2094103

其中 YOUR_CLIENT_ID 是优步提供给您的客户 ID。

要获得客户 ID,您必须通过 https://developer.uber.com/ 向优步注册您的应用。

希望这会有所帮助!

【讨论】:

  • 我也有同样的问题。我使用与您相同的 url 模式(client_id 和 formatted_address),但它仍然不起作用。当我使用 lat 和 lon 而不是格式化的地址时,一切正常。你知道它不起作用的其他原因吗?
  • @Visput 我也在使用相同的 Deeplinking Url,但在没有 Uber 应用程序的情况下它只启动 uber 应用程序而不是移动网站?你能告诉我如何启动移动网站吗
  • @VladPapko :嗨,你用什么确切的键代替(client_id 和 formatted_address)..你能告诉我你的网址吗?
  • @Ishika,这是我最终为我工作的代码:NSString *urlString = [NSString stringWithFormat:@"uber://?client_id=%@&action=setPickup&pickup=my_location&dropoff[latitude]=%f&dropoff[longitude]=%f&dropoff[nickname]=%@", @"<Uber client id>", 37.24, 52.34, @"<Destination Name>"]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
【解决方案2】:

一旦用户放下大头针以选择他们的上车地点,下车地址就会出现。

【讨论】:

    最近更新 更多