CardNextActionModel

constructor(paymentManager: PaymentManager, clientSecret: String, device: Device?, paymentIntentId: String?, currency: String, amount: BigDecimal, activityProvider: () -> Activity)

Parameters

paymentManager

Manager for handling payment operations

clientSecret

Client secret for the payment intent

device

Device information for fingerprinting

paymentIntentId

ID of the payment intent being processed

currency

Currency code for the transaction

amount

Transaction amount

activityProvider

Lambda function that provides the current activity reference. This is crucial for handling configuration changes (e.g., screen rotation). Instead of capturing a static activity reference that becomes stale after configuration changes, this provider is called dynamically to always get the current, valid activity instance. This ensures that activities launched during async operations (like ThreeDSecurityActivity) use the correct activity context even after multiple screen rotations.