2016-10-14 21 views
0

Для в приложение подписки Я использую этот код (в Котлин)Android Publisher API - получить дополнительные данные (определить, какой пользователь сделал объявление о покупке)

iabHelper.launchSubscriptionPurchaseFlow(act, "month", 1001, [email protected], extraKey) 

После этого я сделать запрос на сервер для покупки проверки. Для проверки на сервере, я использую этот код (в Go)

result, err := androidpublisher.Purchases.Subscriptions.Get(packageName, product, token).Do() 
success := err == nil 

Как получить extraKey, который я прошел в приложении? Мне нужно это знать, какой пользователь сделал покупку

ответ

0

Меня смутило имя параметра «extraData» и искал то же поле в запросе. Но когда я посмотрел на источник IabHelper, я нашел этот

@param ExtraData Дополнительные данные (полезная нагрузка разработчика), который будет возвращенное с покупкой * данных при покупке завершается. Эти дополнительные данные будут постоянно связаны с этой * покупки и всегда будут возвращены при покупке опрашивается

Таким образом, дополнительные данные в поле DeveloperPayload

result, err := publ.Purchases.Subscriptions.Get(packageName, product, token).Do() 
success := err == nil && result.DeveloperPayload == extraKey 

Кроме того, отметит, что может быть полезно для тех, кто не читает docs

Примечание: не используйте адрес электронной почты пользователя в строке полезной нагрузки, так что адрес может измениться.