flutter_inapp_purchase library
Classes
- ActiveSubscription
- AndroidSubscriptionOfferInput
- AppTransaction
- ConnectionResult
- Connection result (legacy - kept for backward compatibility)
- DeepLinkOptions
- DiscountIOS
- DiscountOfferInputIOS
- DiscountOfferIOS
- EntitlementIOS
- ErrorCodeUtils
- Utility functions for error code mapping and validation
- ExternalPurchaseLinkResultIOS
- Result of presenting an external purchase link (iOS 18.2+)
- ExternalPurchaseNoticeResultIOS
- Result of presenting external purchase notice sheet (iOS 18.2+)
- FetchProductsResult
- FetchProductsResultProducts
- FetchProductsResultSubscriptions
- FlutterInappPurchase
- InitConnectionConfig
- Connection initialization configuration
- MutationHandlers
- MutationResolver
- GraphQL root mutation operations.
- PricingPhaseAndroid
- PricingPhasesAndroid
- Product
- ProductAndroid
- ProductAndroidOneTimePurchaseOfferDetail
- ProductCommon
- ProductIOS
- ProductRequest
- ProductSubscription
- ProductSubscriptionAndroid
- ProductSubscriptionAndroidOfferDetails
- ProductSubscriptionIOS
- Purchase
- PurchaseAndroid
- PurchaseCommon
- PurchaseIOS
- PurchaseOfferIOS
- PurchaseOptions
- PurchaseResult
- Purchase result (legacy - kept for backward compatibility)
- QueryHandlers
- QueryResolver
- GraphQL root query operations.
- ReceiptValidationAndroidOptions
- ReceiptValidationProps
- ReceiptValidationResult
- ReceiptValidationResultAndroid
- ReceiptValidationResultIOS
- RefundResultIOS
- RenewalInfoIOS
- RequestPurchaseAndroidBuilder
- Builder for Android purchase props
- RequestPurchaseAndroidProps
- RequestPurchaseBuilder
- Unified purchase parameter builder
- RequestPurchaseIosBuilder
- Builder for iOS-specific purchase props
- RequestPurchaseIosProps
- RequestPurchaseProps
- RequestPurchasePropsByPlatforms
- RequestPurchaseResult
- RequestPurchaseResultPurchase
- RequestPurchaseResultPurchases
- RequestSubscriptionAndroidBuilder
- Builder for Android subscription props
- RequestSubscriptionAndroidProps
- RequestSubscriptionBuilder
- RequestSubscriptionIosBuilder
- Builder for iOS-specific subscription props
- RequestSubscriptionIosProps
- RequestSubscriptionPropsByPlatforms
- SubscriptionHandlers
- SubscriptionInfoIOS
- SubscriptionOfferIOS
- SubscriptionPeriodValueIOS
- SubscriptionResolver
- GraphQL root subscription operations.
- SubscriptionStatusIOS
- UserChoiceBillingDetails
- User Choice Billing event details (Android) Fired when a user selects alternative billing in the User Choice Billing dialog
Enums
- AlternativeBillingModeAndroid
- Alternative billing mode for Android Controls which billing system is used
- AndroidPurchaseState
- Android purchase states from Google Play Billing
- AndroidReplacementMode
- Android Replacement Mode (formerly Proration Mode)
- BillingClientState
- Billing client state
- ErrorCode
- ExternalPurchaseNoticeAction
- User actions on external purchase notice sheet (iOS 18.2+)
- IapEvent
- IapPlatform
- InAppMessageType
- In-app message types
- OfferType
- Offer types
- PaymentModeIOS
- ProductAvailability
- Platform availability types
- ProductQueryType
- ProductType
- ProductTypeIOS
- PurchaseState
- RefundType
- Refund types
- ReplacementMode
- Replacement mode (Android)
- ReplaceMode
- Replace mode (Android)
- ResponseCodeAndroid
- Android billing response codes
- Store
- Store types
- SubscriptionOfferTypeIOS
- SubscriptionPeriodIOS
- SubscriptionState
- Subscription states
- TransactionState
- Transaction states
- TypeInApp
- A enumeration of in-app purchase types for Android
Mixins
Extensions
Functions
-
androidPurchaseStateFromValue(
int value) → AndroidPurchaseState -
buildIosPurchasePayload(
String nativeType, Object? iosProps) → Map< String, dynamic> ? - Build iOS purchase payload from props
-
convertToPurchase(
Map< String, dynamic> itemJson, {required bool platformIsAndroid, required bool platformIsIOS, required Map<String, bool> acknowledgedAndroidPurchaseTokens, Map<String, dynamic> ? originalJson}) → Purchase -
convertToPurchaseError(
PurchaseResult result, {required IapPlatform platform}) → PurchaseError -
extractPurchases(
dynamic result, {required bool platformIsAndroid, required bool platformIsIOS, required Map< String, bool> acknowledgedAndroidPurchaseTokens}) → List<Purchase> -
extractResult(
dynamic result) → List< PurchaseResult> ? -
getCurrentPlatform(
) → IapPlatform - Get current platform
-
getUserFriendlyErrorMessage(
dynamic error) → String - Returns a user-friendly message for the given error or error code
-
normalizeDynamicMap(
dynamic value) → Map< String, dynamic> ? -
normalizeDynamicValue(
dynamic value) → dynamic -
parseAndLogAndroidResponse(
dynamic result, {required String successLog, required String failureLog}) → void - Parse Android JSON response and log the result
-
parseProductFromNative(
Map< String, dynamic> json, String type, {required bool fallbackIsIOS}) → ProductCommon -
resolveProductType(
Object type) → String
Typedefs
- AndroidPurchaseBuilder = void Function(RequestPurchaseAndroidBuilder builder)
- AndroidSubscriptionBuilder = void Function(RequestSubscriptionAndroidBuilder builder)
- IosPurchaseBuilder = void Function(RequestPurchaseIosBuilder builder)
- IosSubscriptionBuilder = void Function(RequestSubscriptionIosBuilder builder)
-
MutationAcknowledgePurchaseAndroidHandler
= Future<
bool> Function(String purchaseToken) -
MutationBeginRefundRequestIOSHandler
= Future<
String?> Function(String sku) -
MutationCheckAlternativeBillingAvailabilityAndroidHandler
= Future<
bool> Function() -
MutationClearTransactionIOSHandler
= Future<
bool> Function() -
MutationConsumePurchaseAndroidHandler
= Future<
bool> Function(String purchaseToken) -
MutationCreateAlternativeBillingTokenAndroidHandler
= Future<
String?> Function() -
MutationDeepLinkToSubscriptionsHandler
= Future<
void> Function({String? packageNameAndroid, String? skuAndroid}) -
MutationEndConnectionHandler
= Future<
bool> Function() -
MutationFinishTransactionHandler
= Future<
void> Function({bool? isConsumable, required PurchaseInput purchase}) -
MutationInitConnectionHandler
= Future<
bool> Function({AlternativeBillingModeAndroid? alternativeBillingModeAndroid}) -
MutationPresentCodeRedemptionSheetIOSHandler
= Future<
bool> Function() -
MutationPresentExternalPurchaseLinkIOSHandler
= Future<
ExternalPurchaseLinkResultIOS> Function(String url) -
MutationPresentExternalPurchaseNoticeSheetIOSHandler
= Future<
ExternalPurchaseNoticeResultIOS> Function() -
MutationRequestPurchaseHandler
= Future<
RequestPurchaseResult?> Function(RequestPurchaseProps params) -
MutationRequestPurchaseOnPromotedProductIOSHandler
= Future<
bool> Function() -
MutationRestorePurchasesHandler
= Future<
void> Function() -
MutationShowAlternativeBillingDialogAndroidHandler
= Future<
bool> Function() -
MutationShowManageSubscriptionsIOSHandler
= Future<
List< Function()PurchaseIOS> > -
MutationSyncIOSHandler
= Future<
bool> Function() -
MutationValidateReceiptHandler
= Future<
ReceiptValidationResult> Function({ReceiptValidationAndroidOptions? androidOptions, required String sku}) - PurchaseError = PurchaseError
- PurchaseInput = Purchase
-
QueryCanPresentExternalPurchaseNoticeIOSHandler
= Future<
bool> Function() -
QueryCurrentEntitlementIOSHandler
= Future<
PurchaseIOS?> Function(String sku) -
QueryFetchProductsHandler
= Future<
FetchProductsResult> Function({required List<String> skus, ProductQueryType? type}) -
QueryGetActiveSubscriptionsHandler
= Future<
List< Function([List<ActiveSubscription> >String> ? subscriptionIds]) -
QueryGetAppTransactionIOSHandler
= Future<
AppTransaction?> Function() -
QueryGetAvailablePurchasesHandler
= Future<
List< Function({bool? alsoPublishToEventListenerIOS, bool? onlyIncludeActiveItemsIOS})Purchase> > -
QueryGetPendingTransactionsIOSHandler
= Future<
List< Function()PurchaseIOS> > -
QueryGetPromotedProductIOSHandler
= Future<
ProductIOS?> Function() -
QueryGetReceiptDataIOSHandler
= Future<
String?> Function() -
QueryGetStorefrontHandler
= Future<
String> Function() -
QueryGetStorefrontIOSHandler
= Future<
String> Function() -
QueryGetTransactionJwsIOSHandler
= Future<
String?> Function(String sku) -
QueryHasActiveSubscriptionsHandler
= Future<
bool> Function([List<String> ? subscriptionIds]) -
QueryIsEligibleForIntroOfferIOSHandler
= Future<
bool> Function(String groupID) -
QueryIsTransactionVerifiedIOSHandler
= Future<
bool> Function(String sku) -
QueryLatestTransactionIOSHandler
= Future<
PurchaseIOS?> Function(String sku) -
QuerySubscriptionStatusIOSHandler
= Future<
List< Function(String sku)SubscriptionStatusIOS> > -
QueryValidateReceiptIOSHandler
= Future<
ReceiptValidationResultIOS> Function({ReceiptValidationAndroidOptions? androidOptions, required String sku}) - RequestBuilder = void Function(RequestPurchaseBuilder builder)
- SubscriptionOfferAndroid = AndroidSubscriptionOfferInput
-
SubscriptionPromotedProductIOSHandler
= Future<
String> Function() -
SubscriptionPurchaseErrorHandler
= Future<
PurchaseError> Function() -
SubscriptionPurchaseUpdatedHandler
= Future<
Purchase> Function() -
SubscriptionUserChoiceBillingAndroidHandler
= Future<
UserChoiceBillingDetails> Function() - VoidResult = void