首页 > 解决方案 > 为什么这个方法(setRefreshToken)未定义?

问题描述

这是错误“未为 String 类型定义方法 setRefreshToken(String)”

Music.java,将 SpotifyApi.java 导入到:

SpotifyApi spotifyApi = new SpotifyApi.Builder()
                .setClientId(this.id)
                .setClientSecret(this.secret)
                .setRedirectUri(myAccount)
                .build();
        spotifyApi
            .setAccessToken("<your_access_token>")
            .setRefreshToken("<your_refresh_token>")
            .build();
    }
}

SpotifyApi.java:

  public void setRefreshToken(String refreshToken) {
    this.refreshToken = refreshToken;
  }

标签: javamethodsimportundefinedspotify

解决方案


你的代码看起来很奇怪。

SpotifyApi有方法setAccessToken()setRefreshToken(),但两种方法都是void方法(即它们不返回任何东西,所以方法链接是不可能的)。而且SpotifyApi没有build()办法,所以...

也许你的意思是写:

SpotifyApi spotifyApi = new SpotifyApi.Builder()
        .setClientId(this.id)
        .setClientSecret(this.secret)
        .setRedirectUri(myAccount)
        .setAccessToken("<your_access_token>")
        .setRefreshToken("<your_refresh_token>")
        .build();

否则,您可以将代码重写为:

SpotifyApi spotifyApi = new SpotifyApi.Builder()
        .setClientId(this.id)
        .setClientSecret(this.secret)
        .setRedirectUri(myAccount)
        .build();

spotifyApi.setAccessToken("<your_access_token>");
spotifyApi.setRefreshToken("<your_refresh_token>");

推荐阅读