PingOneMFA
Entry point for all PingOne MFA operations.
This is a singleton that wraps the native PingOne MFA SDK (pingidsdkv2) behind a coroutine-friendly API. All native callback-based operations are bridged to suspend functions that return Result — callers never need a try/catch.
Lifecycle
Call initialize once at application startup before invoking any other function. The call is guarded by a mutex and is idempotent — repeated calls after a successful initialization return Result.success immediately.
Error handling
All suspend functions return Result.failure wrapping a PingOneMFAException on error. The native com.pingidentity.pingidsdkv2.PingOneSDKError type is never exposed.
Functions
Approves the push authentication request represented by notification when the app is in the background (e.g. the user tapped Approve on the system notification banner).
Denies the push authentication request represented by notification when the app is in the background (e.g. the user tapped Deny on the system notification banner).
Generates a cryptographic mobile payload string from the native PingOne MFA SDK.
Returns metadata for all currently paired PingOne MFA accounts.
Returns the current one-time passcode and its remaining validity window.
Configures the PingOne MFA SDK for the given service geo region.
Converts an incoming FCM message into a typed PushNotification.
Registers or refreshes the FCM push pushToken with PingOne.