Подтвердить что ты не робот

Как мы проверяем биллинговую квитанцию ​​Android-приложения на стороне сервера?

Я внедряю биллинг в приложении в игру Android, и мы хотим использовать сервер для хранения информации о покупке.

В соответствии с тем, что я понял до сих пор, Android Market вернет обращение к приложению в форме приемника Broadcast о статусе покупки. Но, поскольку мы сохраняем информацию о транзакции на сервере, мое приложение должно выполнить некоторый HTTP-запрос и обновить мой сервер. Существует очень высокая вероятность того, что этот HTTP-запрос может быть имитирован хакером вручную. Как проверить данные о поступлении на рынок Android из кода сервера?

Есть ли какой-либо обратный вызов Google checkout для моего сервера? Или есть способ проверить ответ IAB, предоставленный клиентом http, является подлинным, и это покупка, сделанная только в моем приложении!

В процессе IAP IOS IAP, у них есть веб-API проверки подлинности @https://sandbox.itunes.apple.com/verifyReceipt, для которого мы можем пройти

req.method = URLRequestMethod.POST;
req.data = "{\"receipt-data\" : \""+ t.receipt +"\"}";

и он говорит, что получение является правильным или нет. У нас есть что-то подобное для Android?

4b9b3361

Ответ 1

Обновить. Вы можете использовать метод getPurchases() для извлечения "неиспользуемых" покупок, как описано в документах разработчика:
http://developer.android.com/google/play/billing/billing_reference.html#getPurchases

Оригинальный ответ (теперь устаревший)

API Google Checkout устарел. Теперь вы должны использовать API статуса покупки.

Если вы планируете использовать API статуса покупки, ссылка выше указывает на эти ограничения:

  • Вы можете использовать API для проверки состояния отдельных элементов - массовые запросы на статус заказа не поддерживаются в настоящее время.
  • Вы можете запросить информацию о заказах, размещенных после или после 12 июня 2013 года, но не для заказов, размещенных ранее.
  • Вы можете запрашивать покупки любого типа элементов, созданного с помощью API In-app Billing v3, или покупки управляемых элементов, сделанных с помощью In-app Billing v1 и v2. Вы не можете использовать API статуса покупки для запроса покупки неуправляемых элементов, сделанных с помощью In-app Billing v1 или v2.

Ответ 2

EDIT: этот ответ устарел, см. ответ Dan J.

Нет обратного вызова, но Google Checkout имеет API. Ваши ответы здесь.