Почему поле developerPayload пусто при обращении к ресурсу Customers? - PullRequest
1 голос
/ 28 мая 2019

Я реализую подписку в приложении, используя Google Play Billing Library . Все работает нормально, за исключением одного случая, когда я подтверждаю покупку покупки, я установил developerPayload на некоторое строковое значение. Тогда я могу увидеть это значение при запросе покупок внутри приложения, но когда я использую API разработчика Google в своем бэкэнде для проверки подписок, поле developerPayload пусто, все остальные поля правильный.

Мой сервер написан на ядре .NET 2.2, и я использую Google.Apis.AndroidPublisher.v3 . Я также проверил это с библиотекой Python, и результат тот же.

Так я готовлю свои параметры подтверждения, developerPayload - это простая строка длиной около 60 символов.

val params = AcknowledgePurchaseParams.newBuilder()
.setDeveloperPayload(developerPayload)
.setPurchaseToken(purchase.purchaseToken)
.build()

billingClient.acknowledgePurchase(params) { billingResult ->
...
}

1 Ответ

0 голосов
/ 25 июля 2019

У меня такая же проблема Это ответ, когда я запрашиваю Google Api

{вид: 'androidpublisher # subscriptionPurchase', startTimeMillis: «1564065118619», expiryTimeMillis: «1564065536468», автообновление: true, priceCurrencyCode: 'SAR', priceAmountMicros: '10990000',
countryCode: 'SA', developerPayload: '', paymentState: 1,
код заказа: 'GPA.3399-9037-3439-13416', тип покупки: 0,
ПодтверждениеState: 0}

А может быть отправлено с Android

AcknowledgePurchaseParams acknowledgePurchaseParams =
                        AcknowledgePurchaseParams.newBuilder()
                                .setPurchaseToken(purchase.getPurchaseToken())
                                .setDeveloperPayload(String.valueOf(user.getId()))
                                .build();
mBillingClient.acknowledgePurchase(acknowledgePurchaseParams, this);
...