startRefreshReceiptRequest method
Uses SKReceiptRefreshRequest to request a new receipt.
If the receipt is invalid or missing, you can use this API to request a new receipt.
The receiptProperties
is optional and it exists only for sandbox testing. In the production app, call this API without pass in the receiptProperties
parameter.
To test in the sandbox, you can request a receipt with any combination of properties to test the state transitions related to Volume Purchase Plan
receipts.
The valid keys in the receiptProperties are below (All of them are of type bool):
- isExpired: whether the receipt is expired.
- isRevoked: whether the receipt has been revoked.
- isVolumePurchase: whether the receipt is a Volume Purchase Plan receipt.
Implementation
Future<void> startRefreshReceiptRequest(
{Map<String, dynamic>? receiptProperties}) {
return channel.invokeMethod<void>(
'-[InAppPurchasePlugin refreshReceipt:result:]',
receiptProperties,
);
}