简介
Alice SDK iOS 支持其他应用程序使用 Alice SDK 通过 Alice 进行支付确认和签名消息。
当前,AliceSDK 支持以下方法。
- getAddress
- signMessage
- sendTransaction
- signTransaction
安装
-
使用 CocoaPods
pod 'AliceSDK'
-
手动导入
下载此仓库名称为 AliceSDK 的文件夹,并将其拖放到您的项目中。
如何使用
-
在 AppDelegate.swift 中的
func application(_ app: UIApplication, open url: URL,option)
下添加AliceSDK.handle(url: url)
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool { AliceSDK.handleURL(url: url) return true }
-
创建一个继承自
AliceDelegate
的类class somclass: AliceDelegate { func didReceiveAliceResponse(response: AliceResponse) { switch response.method { case .getAddress: // do somethimg case .signMessage: // do somethimg case .sendTransaction: // do somethimg case .signTransaction: // do somethimg } } }
-
为这个类创建一个实例,并使用代理
init() { AliceSDK.shared.delegate = self }
API
以下是 Alice SDK 的使用案例
GetAddress
#####输入
AliceSDK.getAddress()
#####输出
func didReceiveAliceResponse(response: AliceResponse) {
let address = response.address
// do something
}
SignMessage
输入
- 消息 是一个普通字符串,非数据字符串。
AliceSDK.signMessage(message: "String") // Normal String, no data string
#####输出
func didReceiveAliceResponse(response: AliceResponse) {
let signedData = response.signedData
// do something
}
SignTransaction
输入
- 接收方: 以太坊地址字符串
- 值: BigInt
- 数据: 十六进制数据字符串
AliceSDK.signTransaction(to: "0xA60f8a3E6586aA590a4AD9EE0F264A1473Bab7cB",
value: "0x2386f26fc10000",
data: "0x48656c6c6f000000000000000000000000000000000000000000000000000000")
输出
func didReceiveAliceResponse(response: AliceResponse) {
let signedData = response.signedData
// do something
}
SendTransaction
输入
- 接收方: 以太坊地址字符串
- 值: BigInt
AliceSDK.sendTransaction(to: "0xA60f8a3E6586aA590a4AD9EE0F264A1473Bab7cB",
value: "0x2386f26fc10000")
输出
func didReceiveAliceResponse(response: AliceResponse) {
let trasactionHash = response.trasactionHash
// do something
}
错误
// 待做
反馈
提交反馈和报告问题的最佳方式是打开一个GitHub问题。请确保包含您的操作系统、设备、版本号和复制报告的步骤。