Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spotify Android SDK和kaaes Web API访问令牌不匹配?_Java_Android_Asp.net Web Api_Spotify - Fatal编程技术网

Java Spotify Android SDK和kaaes Web API访问令牌不匹配?

Java Spotify Android SDK和kaaes Web API访问令牌不匹配?,java,android,asp.net-web-api,spotify,Java,Android,Asp.net Web Api,Spotify,我正在做一个android应用程序,使用spotifys SDK。由于它们不支持元数据,我在android上添加了kaaes/SpotifyWebAPI 我在web api中使用SDK提供的访问令牌时遇到一些问题。据spotify的开发者称,这应该是可行的 从以下位置获取令牌字符串时: 一切正常,但在使用response.getAccessToken()时;我收到了一个错误的请求。 另外,当比较2个字符串时,SDK中的字符串要长得多 知道为什么吗 无论如何,代码如下: 这里是我从SDK获取令牌的

我正在做一个android应用程序,使用spotifys SDK。由于它们不支持元数据,我在android上添加了kaaes/SpotifyWebAPI

我在web api中使用SDK提供的访问令牌时遇到一些问题。据spotify的开发者称,这应该是可行的

从以下位置获取令牌字符串时: 一切正常,但在使用response.getAccessToken()时;我收到了一个错误的请求。 另外,当比较2个字符串时,SDK中的字符串要长得多

知道为什么吗

无论如何,代码如下: 这里是我从SDK获取令牌的地方:

protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
    super.onActivityResult(requestCode, resultCode, intent);

    // Check if result comes from the correct activity
    if (requestCode == REQUEST_CODE) {

        AuthenticationResponse response = AuthenticationClient.getResponse(resultCode, intent);
        response.getAccessToken();
        if (response.getType() == AuthenticationResponse.Type.TOKEN) {
            ACCESS_TOKEN = response.getAccessToken();
            Config playerConfig = new Config(this, response.getAccessToken(), CLIENT_ID);
            spotifyPlayer = Spotify.getPlayer(playerConfig, this, new Player.InitializationObserver() {
                @Override
                public void onInitialized(Player player) {
                    spotifyPlayer.addConnectionStateCallback(MainActivity.this);
                    spotifyPlayer.addPlayerNotificationCallback(MainActivity.this);
                    //spotifyPlayer.play("spotify:user:decerto:playlist:0BZvnsfuqmnLyj6WVRuSte");
                    //spotifyPlayer.play("spotify:user:decerto:starred");
                   // spotifyPlayer.play("spotify:user:decerto:playlist:0GzWuVLoPgyIHBGkt2mE1u");


                }

                @Override
                public void onError(Throwable throwable) {
                    Log.e("MainActivity", "Could not initialize player: " + throwable.getMessage());
                }
            });
        }
    }
}
下面是我向api添加令牌的地方:

 api.setAccessToken(MainActivity.ACCESS_TOKEN);

    SpotifyService spotify = api.getService();
这将生成一个400错误的请求,但如果我只是从spotify API控制台抓取一个令牌,它可以正常工作:

api.setAccessToken("BQD8DnYp64EATmK7KCMVwc_DSN0FCdPgN0VeSsRzGpxYgjji_M8Lyai-bbTe7WygFN4q5bT-cVODfYvUuxv6OW71P9YNa5XG9ZesX2B28t8SgKXm9_PifYnjpH4FmLaOJjnYz4ZdzNdidDhn5hY4nPoPrn0");

您能提供400错误请求响应的错误描述吗?我从spotifycallback得到的错误是:400仅支持有效的承载身份验证此问题已解决。我觉得有点愚蠢,因为这是一个典型的用户错误(而且是一个非常愚蠢的错误)。我试图在响应之前获取API的身份验证。getAccessToken();发生了。