checkPurchase static method
Future<void>
checkPurchase({
- required BaseSettings settings,
- List<
String> productIds = const ['unlock_feature'], - List<
String> subscriptionIds = const ['monthly_subscription:p-monthly-subscription'], - void onCompleted()?,
Check entitlement status
Implementation
static Future<void> checkPurchase({
required BaseSettings settings,
List<String> productIds = const ['unlock_feature'],
List<String> subscriptionIds = const ['monthly_subscription:p-monthly-subscription'],
void Function()? onCompleted,
}) async {
try {
final customerInfo = await Purchases.getCustomerInfo();
settings
..subscriptions = {
for (final id in subscriptionIds) id: customerInfo.activeSubscriptions.contains(id),
}
..unlockFeatures = {
for (final id in productIds) id: customerInfo.allPurchasedProductIdentifiers.contains(id),
};
} catch (e) {
LoggerUtil.d('Check purchase failed: $e');
} finally {
onCompleted?.call();
}
}