I am trying to get an access token to use the Google Play Android Developer API, and I got this far using the Google API Java Client documentation example:
H
If you use ServiceAccountCredentials.fromStream() to create your credential object, you may have to call the createScoped() method too.
FileInputStream fileInputStream = new FileInputStream(KEY_FILE_PATH);
GoogleCredentials credentials = ServiceAccountCredentials.fromStream(fileInputStream);
credentials = credentials.createScoped(SCOPES);
AccessToken accessToken = credentials.refreshAccessToken();
Otherwise you get the error
java.io.IOException: Scopes not configured for service account. Scoped should be specified by calling createScoped or passing scopes to constructor.
Got it. You have to call credential.refreshToken() before credential.getAccessToken(). It doesn't say this anywhere in the documentation but that's what does it.
credential.refreshToken();
accessToken = credential.getAccessToken();