我尝试安装uber iOS演示sdk,并更改了其中的包ID(A)以进行演示测试。我不为什么没有几个方案不起作用。我已将环境更改为沙盒环境。
我所做的更改清单:
1]我在仪表板中创建了带有捆绑ID(A)的示例应用,并在Info.plist中替换了客户端ID

我想要一个我想代表用户请求乘车的场景,所以我转到了“授权代码授予/登录管理器”部分。当我尝试登录时,它说打开了一个Web视图,并在其中请求各种范围的权限访问。 (包括请求范围)。我授予了该权限,该权限又返回到演示应用程序,并引发错误“无法解释来自服务器的数据”。
我该怎么办?

我也在仪表板中标记了所有范围。

然后,我尝试通过本机登录(这是表的最后一部分)登录,并且工作正常。我试图更改本机登录的范围(添加了请求范围),并引发了错误“您的应用未获得所请求范围的授权”。如何在沙盒环境中进行测试?我知道我必须向uber发送获取特权范围访问的请求,但是如果没有该请求,如何进行测试呢?

然后,我尝试通过具有请求范围的隐式授权/登录管理器登录,并抛出错误,要求我的范围对隐式授权无效。 (如预期的那样)

我需要在应用中代表客户预订出租车,这样我的用户就无需输入完整的信息。哪个是正确的方法?
授权还是本机登录? 。如何在两种情况下进行测试。

我还看到了仪表板中的generate access token,用于在未经uber许可的情况下测试各种范围。如何在iOS演示应用程序中使用该令牌?

我做了很多研究,但无法弄清楚。

提前致谢。

深层链接工作和乘车请求小部件按钮起作用。 (表的前两个部分)。

最佳答案

与授权代码授予/登录管理器有关-在模拟器上运行该问题时,我重现了该问题。当我使用设备测试这种情况时,所有设备都按预期工作。因此,在模拟器中使用它时似乎存在一些限制。
请注意,当用户从其设备进行身份验证时,您的用户将需要提供客户端凭据-如果您想代表用户进行身份验证-您将需要为用户的每个Uber帐户都知道该凭据,以便获得有效的access_token用户。因此,我们不建议您代表用户创建乘车请求。目前尚无直接公开可用的API来支付他人的游乐设施费用。您也许可以看看:https://www.uber.com/business/how-it-works

与在沙盒环境中测试“请求”特权作用域有关-没错-即使该作用域未列入白名单,这也适用于开发人员帐户。不幸的是,Uber沙箱环境中存在一个错误,该错误禁用了此功能-我们已经知道了该问题-并且此问题将很快得到解决-目前尚无ETA。

与验证用户身份的正确方法有关-我建议您使用授权代码授予和SSO流程。

仪表板生成的access_token在此演示中不可用-因为演示每次都会创建自己的access_token。例如,您可以使用生成的访问令牌通过Curl测试Uber端点。有关更多信息,请检查我们的documentation

关于ios - 集成Uber iOS演示SDK,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47975379/

10-11 17:58