Я пытаюсь использовать клиентскую библиотеку API Google для Java, чтобы получить информацию о подписках пользователей, приобретенных в моем приложении для Android. Вот как я сейчас поступаю:
HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
JsonFactory JSON_FACTORY = new JacksonFactory();
GoogleCredential credential = new GoogleCredential.Builder().setTransport(HTTP_TRANSPORT)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(GOOGLE_CLIENT_MAIL)
.setServiceAccountScopes("https://www.googleapis.com/auth/androidpublisher")
.setServiceAccountPrivateKeyFromP12File(new File(GOOGLE_KEY_FILE_PATH))
.build();
Androidpublisher publisher = new Androidpublisher.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential).
setApplicationName(GOOGLE_PRODUCT_NAME).
build();
Androidpublisher.Purchases purchases = publisher.purchases();
Get get = purchases.get("XXXXX", subscriptionId, token);
SubscriptionPurchase subscripcion = get.execute(); //Exception returned here
GOOGLE_CLIENT_MAIL
— это адрес электронной почты из API Access из Google Console.
GOOGLE_KEY_FILE_PATH
— это файл p12, загруженный из API Access.
GOOGLE_PRODUCT_NAME
— название продукта из информации о торговой марке.
В консоли Google APIS включена служба "Google Play Android Developer API".
Я получаю следующее:
{
"code" : 401,
"errors" : [ {
"domain" : "androidpublisher",
"message" : "This developer account does not own the application.",
"reason" : "developerDoesNotOwnApplication"
} ],
"message" : "This developer account does not own the application."
}
Я очень ценю вашу помощь в решении этой проблемы...