getProductsIntroductoryOfferEligibility method
Future<Map<String, AdaptyEligibility> >
getProductsIntroductoryOfferEligibility({
- required List<
AdaptyPaywallProduct> products,
Once you have an AdaptyPaywallProduct array, fetch introductory offers information for this products.
Read more on the Adapty Documentation Parameters:
- products: the AdaptyPaywallProduct array, for which information will be retrieved.
Returns:
- a map where Key is
vendorProductId
and Value is corresponding AdaptyEligibility.
Implementation
Future<Map<String, AdaptyEligibility>> getProductsIntroductoryOfferEligibility({
required List<AdaptyPaywallProduct> products,
}) async {
if (AdaptySDKNative.isAndroid) {
return Map<String, AdaptyEligibility>.fromIterable(products,
key: (item) => item.vendorProductId, value: (item) => item.subscriptionDetails?.androidIntroductoryOfferEligibility ?? AdaptyEligibility.ineligible);
}
final resultString = (await _invokeMethodHandlingErrors<String>(Method.getProductsIntroductoryOfferEligibility, {
Argument.productsIds: products.map((e) => e.vendorProductId).toList(),
})) as String;
final Map<String, dynamic> resultMap = json.decode(resultString);
var result = new Map<String, AdaptyEligibility>();
for (MapEntry<String, dynamic> entry in resultMap.entries) {
result[entry.key] = AdaptyEligibilityJSONBuilder.fromJsonValue(entry.value.toString());
}
return result;
}