android 的 Dropbox api 为 AccessTokenSecret 返回 null

Dropbox api for android returning null for AccessTokenSecret

我正在使用以下代码通过 Dropbox 进行身份验证

AppKeyPair appKeys = new AppKeyPair(Constants.DROPBOX_APPKEY, Constants.DROPBOX_APPSECRET);
        AndroidAuthSession session = new AndroidAuthSession(appKeys);
        mDBApi = new DropboxAPI<AndroidAuthSession>(session);
        mDBApi.getSession().startOAuth2Authentication(this);

完成后

我打电话给

 mDBApi.getSession().finishAuthentication();

Account dropboxAccount =  mDBApi.accountInfo();
            String name = dropboxAccount.displayName;
            AccessTokenPair pair = mDBApi.getSession().getAccessTokenPair();
            String accessToken = mDBApi.getSession().getOAuth2AccessToken();
            String accessTokenSecret = pair.secret;

但是 AccessTokenPair 为空。我还应该如何获得 accessTokenSecret?

Dropbox Android Core SDK 中,getAccessTokenPair 方法 return 是一个 OAuth 1 访问令牌,如果有的话,作为 AccessTokenPairgetOAuth2AccessToken return 是一个 OAuth 2 访问令牌(如果有的话)。请注意,OAuth 2 访问令牌只有一件(即基本上只有一个字符串),而 OAuth 1 访问令牌有两件(密钥和秘密)。

由于您使用的是 startOAuth2Authentication,您只有一个 OAuth 2 访问令牌,getAccessTokenPair 不会 return 任何东西。