我正在尝试获取访问 token 以使用Google Play Android Developer API,并且使用the Google API Java Client documentation example达到了这一目的:

HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
JsonFactory JSON_FACTORY = new JacksonFactory();

GoogleCredential credential = new GoogleCredential.Builder()
    .setTransport(HTTP_TRANSPORT)
    .setJsonFactory(JSON_FACTORY)
    .setServiceAccountId("...gserviceaccount.com")
    .setServiceAccountScopes("https://www.googleapis.com/auth/androidpublisher")
    .setServiceAccountPrivateKeyFromP12File(keyFile)
    .build();

但是,如何从该凭证中获取访问 token ? credential.getAccessToken()返回null。我是在做错什么,还是缺少一些步骤?

最佳答案

得到它了。您必须在credential.getAccessToken()之前调用credential.refreshToken()。它并没有在文档中的任何地方说这,而是这样做的。

credential.refreshToken();
accessToken = credential.getAccessToken();

关于authorization - 如何从GoogleCredential获取访问 token ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12573635/

10-10 00:22