Welcome to our new developer portal! Use the "Ask" button to chat with our AI Agent.

Push Provisioning

Paso 1: Mostrar el Agregar a Wallet botón

Cuando el usuario final inicia por primera vez la aplicación del emisor, debe determinar si mostrar u ocultar el Agregar a Apple Wallet botón para una tarjeta específica.

Lo antes posible, determine si el usuario final tiene un iPhone o un iPhone emparejado con un Apple Watch.

Luego combine este estado de emparejamiento con el getToken resultado de la API para decidir si mostrar u ocultar el Agregar a Apple Wallet botón.

importar WatchConnectivity

class ViewController: UIViewController, TPCSDKProvisionDelegate, WCSessionDelegate {    
    // Para almacenar el valor isWatchPaired antes de llamar a la función TPC
    var isWatchPaired = false

    override func viewDidLoad() {
        super.viewDidLoad()
        // Realizar cualquier configuración adicional después de cargar la vista.
        if WCSession.isSupported() {
            let session = WCSession.default
            session.delegate = self
            session.activate()
        }
    }
    
    // MARK: WCSessionDelegate
    func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {
        if error != nil {
            //manejar error
        } else if activationState == .activated && session.isPaired {
            isWatchPaired = true
        }
    }
    
    func sessionDidBecomeInactive(_ session: WCSession) {
        // manejar sessionDidBecomeInactive
        isWatchPaired = false
    }
    
    func sessionDidDeactivate(_ session: WCSession) {
        // manejar sessionDidDeactivate
        isWatchPaired = false
    }
}

Luego llame a la getToken API para actualizar el resultado.

info-circle

Nota

Consulte las PKAddPassButton directrices para usar el Agregar a Apple Wallet botón en su aplicación del emisor.

Lo siguiente se aplica a iOS SDK 2.0.0 y versiones anteriores.

Lo siguiente se aplica a iOS SDK 2.1.0 y posteriores.

exclamation-circle

Precaución

  • Si la tarjeta aún aparece como "NOT_DIGITIZED" después de la provisión, verifique que la aplicación del emisor esté configurada correctamente en el portal TSP.

  • El TPCSDK.isCardDigitized API está en desuso y no se recomienda. Use la getToken API en su lugar. El isCardDigitized API no indica si la tarjeta está pendiente de activación o si está en un iPhone o en un Apple Watch.

Paso 2: Provisionar una tarjeta

El delegado de provisión devuelve un PKPass después de que la provisión se complete. Úselo para verificar el estado de digitalización de la tarjeta. Si el delegado devuelve nil, el SDK también devuelve un error.

Antes de usar la clase PKPass, asegúrese de agregar PassKit.framework a su proyecto.

exclamation-circle

Advertencia

Debe agregar el derecho de Push Provisioning a la aplicación del emisor antes de llamar a esta API. De lo contrario, la API devolverá un error. Para obtener el derecho, siga las directrices de acceso a Push Provisioning.

info-circle

Use la getToken API para obtener localPKPass o remotePKPass. Si cualquiera de los localPKPass o remotePKPass no es nil, acceda a la primaryAccountIdentifier propiedad del PKSecureElementPass objeto. Pase el primaryAccountIdentifier recuperado a la provision

API.

provisionDelegate:self];

Última actualización

¿Te fue útil?