Я пытаюсь реализовать покупки в приложении с помощью официальной покупки Flutter в приложении плагин. У меня все работает, за исключением того, что я не могу понять, как определить, активна ли подписка пользователей или истек срок ее действия. Даже после того, как я отменил свою тестовую подписку, значения, которые я получаю после подключения и выполнения queryPastPurchases()
, такие же, как при активной подписке:
productId: test_subscription_1
transactiondate: 1565682346568
status: null
verificationData
source: IAPSource.GooglePlay
localVerificationData: {
"orderId":"GPA.1234-1234-1234-12345",
"packageName":"com.example.myapp",
"productId":"test_subscription_1",
"purchaseTime":1565682346568,
"purchaseState":0,
"purchaseToken":"<long string>",
"autoRenewing":false
}
serverVerificationData: "<long string>"
Должен ли я просто жестко закодировать период подписки и сравнить текущее время с purchaseTime
+ периодом подписки? Будет ли это работать при автоматическом продлении? Что, если пользователь изменит дату на своем телефоне на год назад? Кажется, должно быть какое-то значение, которое должно либо давать мне время истечения срока, либо, по крайней мере, логическое значение true / false, чтобы указать, действительна ли подписка?