如何在Android中的Uber SDK中验证用户?

时间:2016-06-02 07:23:09

标签: android authentication uber-api

参考this link,我将Uber sdk集成到我的应用程序中。之前我在优步开发者网站上注册了我的应用程序,获得了我的客户端ID和客户端密码。

我在我的应用程序类中添加了以下代码:

config.cache_classes

然后在我的片段中:

的OnCreate():

UberSdk.initialize(this, "MY_CLIENT_ID");

UberSdk.setRedirectUri("MY_REDIRECT_URI");

UberSdk.setSandboxMode(true);

onActivityResult():

accessTokenManager = new AccessTokenManager(getContext());
    loginManager = new LoginManager(accessTokenManager);
    List<Scope> scopes = new ArrayList<Scope>();
    scopes.add(Scope.PROFILE);
    scopes.add(Scope.RIDE_WIDGETS);

    Date expirationTime = new Date(System.currentTimeMillis());
    String token = "Token";
    AccessToken accessToken = new AccessToken(expirationTime, scopes, token);

    accessTokenManager.setAccessToken(accessToken);

    Log.d("ttt", "accessToken: " + accessTokenManager.getAccessToken());


    loginManager.loginWithScopes(getActivity(), scopes);

我不知道如何添加重定向uri以及从哪里获取重定向uri。它的实际用途是什么(搜索很多仍然不清楚它的作用)。

一旦我点击优步骑行按钮,它就会导航到某个登录活动状态,弹出窗口显示“验证身份时出现问题”。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

这里很好地描述了Oauth 2.0中使用重定向URI的内容。 What's a redirect URI? how does it apply to iOS app for OAuth2.0?

TLDR:您的应用程序可能存在于Web和移动应用程序中,重定向URI是在流程完成后重定向回的端点。对于移动客户端,您可以轻松地将重定向URI设置为&#34; http://localhost&#34;在Uber developer dashboard中,因为它与网络上的要求不同。

我们正在调查进一步简化这一点,所以请留意我们未来的版本!