Я пытаюсь использовать Google Admob API Java клиент, описанный здесь , но я получил такой ответ:
{
"code" : 0,
"error" : {
"code" : 403,
"message" : "Request had insufficient authentication scopes.",
"errors" : [ {
"message" : "Insufficient Permission",
"domain" : "global",
"reason" : "insufficientPermissions"
} ],
"status" : "PERMISSION_DENIED"
}
}
Вот как я получаю учетные данные:
GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY,
new InputStreamReader(GoogleConnector.class.getResourceAsStream("/client_secrets_tt.json")));
// set up authorization code flow
GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(
httpTransport, JSON_FACTORY, clientSecrets,
Collections.singleton("https://www.googleapis.com/auth/admob.report")).setDataStoreFactory(
dataStoreFactory).build();
// authorize
return new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize(userId);
Это мой клиент Admob:
AdMob adMobClient = new AdMob.Builder(
httpTransport,
jsonFactory,
request -> {
credential.initialize(request);
request.setParser(new JsonObjectParser(jsonFactory));
})
.setRootUrl("https://admob.googleapis.com")
.setApplicationName(applicationName)
.build();
return adMobClient;
И я также вручную добавил область действия https://www.googleapis.com/auth/admob.report на экране согласия OAuth.
Может кто-нибудь помочь мне или подсказать, в чем может быть причина этого?