在 Android 中通过推特使用 Digits

Using Digits by twitter in Android

我想使用 Twitter 新推出的登录提供商 Digits。一切正常,直到我想按照 here.

所述在第三方服务器(在我的例子中是 Amazon Cognito)上验证用户凭据
TwitterAuthConfig authConfig = TwitterCore.getInstance().getAuthConfig();
TwitterAuthToken authToken = session.getAuthToken();

OAuthSigning oauthSigning = new OAuthSigning(authConfig, authToken);

在我的例子中 session.getAuthToken(); returns AuthToken 的实例不是 TwitterAuthToken 然后我不能将它传递给 OAuthSigning()

您只需将 AuthToken 转换为 TwitterAuthToken。如果您使用 with Amazon Cognito 您可以使用类似于以下的块:

   @Override
   public void success(DigitsSession session, String phoneNumber) {
       TwitterAuthToken authToken = (TwitterAuthToken)session.getAuthToken();
       String value = authToken.token + ";" + authToken.secret;
       Map<String, String> logins = new HashMap<String, String>();
       logins.put("www.digits.com", value);
       // Note: This overrides any existing logins
       credentialsProvider.setLogins(logins);
   }