Android сохраняет ссылку на старый проект Google API

Я работаю с 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: }

Что случилось? Я плохо себя чувствую?


person Robert    schedule 15.04.2016    source источник
comment
Возможно, вы могли бы проверить, является ли ключ youtube_api_key правильным или старым?   -  person Elye    schedule 15.04.2016
comment
@Elye Я создаю проект с нуля и генерирую новый ключ OAuth2. Я использую GoogleAuthUtil.getToken(context, account, scopes) для получения токена, чтобы использовать его для получения данных. Я не знаю, почему или где эта старая ссылка ??   -  person Robert    schedule 15.04.2016
comment
Я не помню, чтобы для игры в YouTubeApi требовался вход в систему OAuth. Возможно, вам нужно перейти в консоль разработчика Google, чтобы ваше приложение могло вызывать YouTubeApi?   -  person Elye    schedule 15.04.2016
comment
Для YouTube Player нет, но я хочу получить доступ к данным своего канала, а также к информации. Для такого рода процессов требуется авторизация OAuth2. Разрешить/запретить доступ. Ну, я не знаю, где проблема в моем коде или доступе к андроиду. Я использую токен для доступа к информации о моем канале. Если проблема с идентификатором проекта будет решена, я буду счастлив.   -  person Robert    schedule 15.04.2016
comment
Ошибка больше связана с YoutubeApi, чем с OAuth. Ознакомьтесь с stackoverflow.com/questions/36582274/   -  person Elye    schedule 15.04.2016
comment
Разрешили ли вы своему приложению доступ к YouTubeApi в консоли разработчика Google?   -  person Elye    schedule 15.04.2016
comment
Посетите youtube.com/watch?v=Im69kzhpR3I.   -  person Elye    schedule 15.04.2016
comment
Да, я включил apis.   -  person Robert    schedule 15.04.2016
comment
Решилось с этим? Если нет, я думаю, вам придется разделять и властвовать, чтобы найти виновного.   -  person Elye    schedule 16.04.2016
comment
Можете ли вы подтвердить, что ваш скрипт Gradle/файл манифеста нигде не имеет этого старого имени пакета?   -  person Sam    schedule 18.04.2016
comment
Привет @Sam, я также создаю новый проект с новым идентификатором OAuth2, и я сделал все с нуля, и сообщение такое же и с тем же старым идентификатором проекта. Я не знаю, где проблема?   -  person Robert    schedule 18.04.2016
comment
Это действительно странно, но я бы рекомендовал изменить все. Попробуйте использовать другую учетную запись разработчика, а не ту учетную запись, которую вы использовали для регистрации старого пакета.   -  person Sam    schedule 18.04.2016
comment
Вы пробовали эту ссылку stackoverflow.com/questions/28318585/   -  person Vivek Mishra    schedule 25.04.2016