Я пытаюсь авторизовать служебную учетную запись, используя oauth2 через библиотеку Python google-client-api.В конечном итоге я хочу проверить покупки в приложении.
Это мой код:
SCOPES = ['https://www.googleapis.com/auth/androidpublisher']
SERVICE_ACCOUNT_FILE = 'google.api.json'
credentials = service_account.Credentials.from_service_account_file(SERVICE_ACCOUNT_FILE, scopes=SCOPES)
http = credentials.authorize(httplib2.Http())
service = build(
serviceName='androidpublisher',
version='v2',
credentials=credentials
)
req = service.purchases().products().get(
packageName=package,
productId=product,
token=token
)
response = req.execute()
Я получаю это сообщение обратно:
...returned "The project id used to call the Google Play Developer API has not been linked in the Google Play Developer Console."
Идентификатор моего проектаабсолютно связаны;моя учетная запись службы абсолютно подключена в консоли Google Play как пользователь с правильными разрешениями для этого проекта.Когда я регистрирую вышеуказанный код, я получаю идентификатор проекта, который связан.
Токен (не токен доступа, а токен покупки в приложении) взят из тестовой покупки моей личной учетной записи Google (совсем недавноGoogle наконец-то открыл аккаунты разработчиков для тестовых покупок!).И sku для моей тестовой покупки - это реальный sku, который я собираюсь продать пользователям приложения.
Я в растерянности.Существует так много противоречивой информации о том, как сделать то, чего я пытаюсь достичь.Стыдно, гугл!Стыдно!Документов не хватает, если не сказать больше.(Я имею в виду, что у них есть хорошая информация, она просто разбросана повсюду).
Буду рад любому совету по этому поводу.Я в растерянности и не могу пройти вышеупомянутое сообщение об ошибке.
РЕДАКТИРОВАТЬ : Мой код был правильным выше;см. мой ответ для реальной причины.