Я работаю с API Google YouTube, и у меня есть эта ошибка:
com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: {
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "code" : 403,
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "errors" : [ {
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "domain" : "usageLimits",
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "message" : "Access Not Configured. YouTube Data API has not been used in project XXXXXXXXXXXX before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube/overview?project=XXXXXXXXXXXX then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "reason" : "accessNotConfigured",
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "extendedHelp" : "https://console.developers.google.com/apis/api/youtube/overview?project=XXXXXXXXXXXX"
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: } ],
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: "message" : "Access Not Configured. YouTube Data API has not been used in project XXXXXXXXXXXX before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube/overview?project=XXXXXXXXXXXX then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
04-15 13:25:42.951 22653-24865/com.player.jointv W/System.err: }
Я думал, что моя проблема связана с отключением API или, возможно, с использованием неправильного имени пользователя, но затем я нажимаю ссылку на проект в ошибке и вижу, что идентификатор проекта (XXXXXXXXXXXX) неверен, потому что это был старый проект.
Проблемы:
- Я не знаю, как обновить или что мне нужно изменить, чтобы получить новый идентификатор проекта??
- Нужно ли удалять мусорный файл??
- Где или как проект Android хранит эти ссылки? Я беспокоюсь об этом, потому что, если мне нужно удалить текущий проект, возможно, я получу ту же ошибку в будущем.
Инструменты.
Использование Android Studio 2.0 в Windows.
Получить токен авторизации
Я получаю токен с помощью GoogleAuthUtils:
token = GoogleAuthUtil.getToken(context, account, Config.YOUTUBE_SCOPES);
Где:
контекст: AppCompatActivity
учетная запись: учетная запись
Config.YOUTUBE_SCOPES:
final String YOUTUBE_SCOPES = "oauth2:https://www.googleapis.com/auth/yt-analytics.readonly" +
" https://www.googleapis.com/auth/youtube.readonly";
Создание учетных данных
Я взял этот кусочек кода из учетных данных Google. пример:
GoogleCredential credential = new GoogleCredential()
.setAccessToken(authToken);
Использование учетных данных для настройки служб API.
// This object is used to make YouTube Data API requests.
youtube = new YouTube.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName("youtube-analytics-api-report-example")
.build();
//This object is used to make YouTube Analytics API requests.
analytics = new YouTubeAnalytics
.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName("youtube-analytics-api-report-example")
.build();
Использование ключа веб-API
Я создаю ключ веб-API и получаю сообщение об ошибке:
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: com.google.api.client.googleapis.json.GoogleJsonResponseException: 401 Unauthorized
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: {
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "code" : 401,
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "errors" : [ {
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "domain" : "global",
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "location" : "Authorization",
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "locationType" : "header",
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "message" : "Invalid Credentials",
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "reason" : "authError"
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: } ],
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: "message" : "Invalid Credentials"
04-15 15:36:27.274 14733-16676/com.player.jointv W/System.err: }
Что случилось? Я плохо себя чувствую?
GoogleAuthUtil.getToken(context, account, scopes)
для получения токена, чтобы использовать его для получения данных. Я не знаю, почему или где эта старая ссылка ?? - person Robert   schedule 15.04.2016