CieloQrWallets 0.0.1

CieloQrWallets 0.0.1

Braspag 维护。



CieloQrWallets

要求

  • iOS 10.0+ / macOS 10.13+
  • Xcode 10.2+
  • Swift 5+

安装

  • 将提供 CieloQrWallets.framework 文件,并将该文件导入 Xcode。

在项目导航器中点击您的项目名称,并选择“通用”选项卡,然后导航到“框架、库和嵌入内容”部分,点击 + 符号,找到并选择 CieloQrWallets.framework 文件,选择文件后点击“添加”按钮。

使用方法

QR码数据

在Cielo生成QR码时,需要获取QrCodeBase64Image和QrCodeId字段。更多详情,请点击此处

配置

要使用SDK开始开发,需要在您的ViewController中添加一个类型为CieloQrWalletProtocol的变量,如下所示

var cieloWallet: CieloQrWalletProtocol!

此协议只有一个合约需要实现,我们将在后续文档中详细介绍。

为了实例化cieloWallet变量,我们将使用以下方法

cieloWallet = CieloQrWallet.instantiate(qrCodeBase64Image: "BASE64 DO QR CODE",
                                                qrCodeId: "IDENTIFICADOR DO QR CODE",
                                                uiMode: .dark,
                                                delegate: self)

注意:uiMode参数是类型为UIMode的enum,默认值为.light,因此可以在调用时省略,如下所示

cieloWallet = CieloQrWallet.instantiate(qrCodeBase64Image: "BASE64 DO QR CODE",
                                                qrCodeId: "IDENTIFICADOR DO QR CODE",
                                                delegate: self)

实例化cieloWallet对象时,可以观察到需要在delegate参数中提供一个值。此参数是实施方法返回的ViewController的引用,该方法将在ViewController中显示可用的wallet。

为此参数正常工作,我们需要实现CieloQrWalletDelegate委托,该委托负责显示可用的wallet。

要实现CieloQrWalletDelegate的方法,只需要将您的ViewController与委托关联,如下所示

class ViewController: CieloQrWalletDelegate {
    ...
}
  • 实现建议
extension ViewController: CieloQrWalletDelegate {
    func showWalletOptions(with wallet: WalletViewProtocol) {
        guard let alert = wallet as? UIViewController else { return }
        present(alert, animated: true)
    }
}

showWalletOptions方法将在sdk中显示的wallet以actionSheet格式显示一个UIAlertController