Cómo utilizar XpressPlug en aplicaciones nativas de iOS
Después de configurar los parámetros correctos e inicializar XpressPlug, todas las funciones disponibles están listas para usarse e interactuar con el SDK.
Aviso
Solo inicializa XpressPlug una vez por sesión, preferentemente durante el inicio de la aplicación o en la etapa más temprana posible. No podrás ejecutar ningún punto de entrada hasta que se inicialice XpressPlug.
Puedes interactuar con XpressPlug y llamar a los puntos de entrada. Estos se usan para conectarse con las funcionalidades de Veritran, como los procesos o las transacciones.
Los puntos de entrada pueden ser visuales, como invocar una pantalla que abre la cámara del dispositivo para tomar una fotografía, o no visuales, como la validación de un inicio de sesión. Para interactuar con estos puntos de entrada, ingresa la siguiente sintaxis: Para interactuar con estos puntos de entrada, ingresa la sintaxis a continuación, donde:
EntryPointName: String para el nombre del punto de entrada.
Parameters: Parámetros de entrada a utilizar, siguiendo el formato ([String,String]).
Delegate: Instancia que implementa el XpressPlugDelegate.
viewController: ViewController que invocará la vista de XpressPlug.
@objc public class XpressPlugSDK: NSObject { @objc public static func run( _ entryPointName: String, withParameters parameters: [String: String]?, andDelegate delegate: XpressPlugDelegate, andViewController viewController: UIViewController ) } XpressPlugModule.callEntryPoint (entryPointName, inputParameters, outputKeys);
Nota
El equipo de Veritran proporcionará los nombres de los puntos de entrada y sus parámetros.
En el siguiente ejemplo, el punto de entrada se llama I_DOCU_SDK y sus parámetros de entrada incluyen un mapa con un nombre de usuario de tipo string. Las claves definidas como claves de salida son "errorCode" y "age". Como resultado, la función devuelve un mapa con el formato <llave, Valor> que contiene valores previamente establecidos en el array outputKeys. Ve el ejemplo a continuación para aprender cómo llamar a un punto de entrada:
@IBAction func onClick(_: Any) { print(“Calling XpressPlugModule EntryPoint”) XpressPlugSDK.run( " I_DOCU_SDK ", withParameters: [" userName ": "Veritran"], andDelegate: self, andViewController: self) }
Luego, usa el código a continuación para implementar XpressPlugDelegate:
//MARK: XpressPlug Delegate extension ViewController: XpressPlugDelegate { func onError( _ viewController: UIViewController, errorId: Int32, message: String, entryPoint: String? ) { print("XpressPlugModule EntryPoint Result errorId :\(errorId)") } func onUpdateConfigurationRequired(_ viewController: UIViewController, entryPoint: String?) {} func onXpressPlugNeedsUpdate(_ viewController: UIViewController, entryPoint: String?) {} func onClose(_ viewController: UIViewController, entryPoint: String?, result: OutboundParameters) { let age = result.get('age') let statusCode = result.get('statusCode') print("XpressPlugModule EntryPoint Result-- Age: \(age), StatusCode: \(statusCode)") } }
Consulta el código y la tabla a continuación para ver un ejemplo de posibles resultados del punto de entrada:
func onMessage(_ viewController: UIViewController, entryPoint: String?, command: String, result: XPOutboundParameters) { } func onError(_ viewController: UIViewController, entryPoint: String?) { } func onUpdateConfigurationRequired(_ viewController: UIViewController, entryPoint: String?) { } func onUpdateSdkRequired(_ viewController: UIViewController, entryPoint: String?) { } func onClose(_ viewController: UIViewController, entryPoint: String?, result: XPOutboundParameters) { }
onMessage | Devuelve el estado de XpressPlug al delegado. |
onException | Se ejecuta cuando se produce un error. |
onUpdateConfigurationRequired | Aparece cuando se debe actualizar la configuración. |
onUpdateSdkRequired | Aparece cuando se debe actualizar el SDK. |
onClose | Muestra el resultado obtenido después de ejecutar los puntos de entrada. Recibe un diccionario con parámetros de salida como resultado. |