HeliumFlutterPlatform class abstract

Inheritance
  • Object
  • PlatformInterface
  • HeliumFlutterPlatform
Implementers

Constructors

HeliumFlutterPlatform()
Constructs a HeliumFlutterPlatform.

Properties

hashCode int
The hash code for this object.
no setterinherited
isInitialized bool
Whether Helium has already been initialized.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createPaddlePortalSession() Future<String?>
Creates a Paddle customer portal session and returns the portal URL. iOS only; returns null on Android.
createStripePortalSession({required String returnUrl}) Future<String?>
Creates a Stripe customer portal session and returns the portal URL. iOS only; returns null on Android.
disableExternalWebCheckout() Future<void>
Disable External Web Checkout. iOS only; no-op on Android.
disableRestoreFailedDialog() → void
enableExternalWebCheckout({required String successURL, required String cancelURL, Set<HeliumWebCheckoutProcessor>? paymentProcessors}) Future<void>
Enable External Web Checkout (Paddle/Stripe). iOS only; no-op on Android.
getExperimentInfoForTrigger(String trigger) Future<ExperimentInfo?>
getHeliumUserId() Future<String?>
Gets helium user id
getPaywallInfo(String trigger) Future<PaywallInfo?>
getUpsellWidget({required String trigger, PaywallEventHandlers? eventHandlers}) Widget
handleURL(String url) Future<bool>
Forward an incoming URL to Helium so it can react to External Web Checkout success/cancel redirects without waiting for the app to foreground.
hasActivePaddleEntitlement() Future<bool>
Returns true if the user has any active Paddle entitlement. iOS only; returns false on Android.
hasActiveStripeEntitlement() Future<bool>
Returns true if the user has any active Stripe entitlement. iOS only; returns false on Android.
hasAnyActiveSubscription() Future<bool>
hasAnyEntitlement() Future<bool>
hasEntitlementForPaywall(String trigger) Future<bool?>
hideAllUpsells() Future<bool>
hideUpsell() Future<bool>
initialize({required String apiKey, HeliumCallbacks? callbacks, HeliumPurchaseDelegate? purchaseDelegate, Widget? fallbackPaywall, String? customAPIEndpoint, String? customUserId, Map<String, dynamic>? customUserTraits, String? revenueCatAppUserId, String? fallbackBundleAssetPath, HeliumEnvironment? environment, HeliumPaywallLoadingConfig? paywallLoadingConfig, Set<String>? androidConsumableProductIds}) Future<String?>
Initialize helium sdk at the start-up of your flutter application.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
overrideUserId({required String newUserId, Map<String, dynamic>? traits}) Future<String?>
Overrides user id to given newUserId
paywallsLoaded() Future<bool>
Returns bool based on paywall loaded or not
presentUpsell({required BuildContext context, required String trigger, PaywallEventHandlers? eventHandlers, Map<String, dynamic>? customPaywallTraits, bool? dontShowIfAlreadyEntitled}) Future<String?>
Presents view based on trigger
resetHelium({bool clearUserTraits = true, bool clearExperimentAllocations = false}) Future<void>
resetPaddleEntitlements() Future<void>
Resets Paddle entitlements and clears the user ID. iOS only; no-op on Android.
resetStripeEntitlements() Future<void>
Resets Stripe entitlements and clears the user ID. iOS only; no-op on Android.
setAllowWebCheckoutWithoutUserId(bool allow) Future<void>
Allow Web Checkout paywalls to show even when no custom user ID has been set via overrideUserId. iOS only; no-op on Android.
setAndroidConsumableProductIds(Set<String> productIds) → void
Set consumable product IDs for Android. These IDs will be used to identify consumable products in the Play Store and this is only respected if no custom purchaseDelegate is supplied. This is only relevant on Android and is a no-op on other platforms.
setCustomRestoreFailedStrings({String? customTitle, String? customMessage, String? customCloseButtonText}) → void
setLightDarkModeOverride(HeliumLightDarkMode mode) → void
setRevenueCatAppUserId(String rcAppUserId) → void
setThirdPartyAnalyticsAnonymousId(String? anonymousId) Future<void>
setupCore({required String apiKey, HeliumCallbacks? callbacks, HeliumPurchaseDelegate? purchaseDelegate, Widget? fallbackPaywall, String? customAPIEndpoint, String? customUserId, Map<String, dynamic>? customUserTraits, String? revenueCatAppUserId, String? fallbackBundleAssetPath, HeliumEnvironment? environment, HeliumPaywallLoadingConfig? paywallLoadingConfig, Set<String>? androidConsumableProductIds}) Future<String?>
Sets up core Helium configuration (delegates, callbacks, identity, etc.) without triggering native SDK initialization. Used by wrapper plugins (e.g. helium_stripe) that need to call their own specialized native initialization after core setup.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

instance HeliumFlutterPlatform
The default instance of HeliumFlutterPlatform to use.
getter/setter pair