CheckoutSdkIos - 测试版本
测试版本 - 在联系 [email protected] 之前不要使用
要求
- iOS 10.0+
- Xcode 9.0+
- Swift 4.1+
文档
您可以在本网站上找到 CheckoutSdkIos 的文档 此处。
安装
CocoaPods
CocoaPods 是用于 Cocoa 项目的依赖管理器。您可以使用以下命令安装它:
$ gem install cocoapods
CocoaPods 1.1+ 是构建 CheckoutSdkIos 1.0+ 所必需的。
要使用 CocoaPods 将 CheckoutSdkIos 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'CheckoutSdkIos', :git => 'https://github.com/floriel-fedry-cko/frames-ios.git'
end
然后,运行以下命令:
$ pod install
Carthage
Carthage 是一个去中心化的依赖管理器,它会构建您的依赖并提供二进制框架。
您可以使用以下命令通过 Homebrew 安装 Carthage:
$ brew update
$ brew install carthage
要使用 Carthage 将 CheckoutSdkIos 集成到您的 Xcode 项目中,请在您的 Cartfile
中指定它:
github "floriel-fedry-cko/frames-ios" ~> 0.2
运行 carthage update
来构建框架,并将构建的 CheckoutSdkIos
拖入您的 Xcode 项目中。
使用方法
导入 SDK
import CheckoutSdkIos
CardViewController
使用 class ViewController: UIViewController, CardViewControllerDelegate {
let checkoutAPIClient = CheckoutAPIClient(publicKey: "pk_test_6ff46046-30af-41d9-bf58-929022d2cd14",
environment: .sandbox)
let cardViewController = CardViewController(cardHolderNameState: .hidden, billingDetailsState: .hidden)
override func viewDidLoad() {
super.viewDidLoad()
// set the card view controller delegate
cardViewController.delegate = self
// replace the bar button by Pay
cardViewController.rightBarButtonItem = UIBarButtonItem(title: "Pay", style: .done, target: nil, action: nil)
// specified which schemes are allowed
cardViewController.availableSchemes = [.visa, .mastercard]
navigationController?.pushViewController(cardViewController, animated: false)
}
func onTapDone(card: CkoCardTokenRequest) {
checkoutAPIClient.createCardToken(card: card, successHandler: { cardToken in
print(cardToken.id)
}, errorHandler: { error in
print(error)
})
}
}
使用 CheckoutSdkIos 中的可用方法
您可以在使用指南中找到更多示例。
CheckoutAPIClient
创建 API 客户端 // replace "pk_test_6ff46046-30af-41d9-bf58-929022d2cd14" by your own public key
let checkoutAPIClient = CheckoutAPIClient(publicKey: "pk_test_6ff46046-30af-41d9-bf58-929022d2cd14",
environment: .sandbox)
CardUtils
实例
创建 let cardUtils = CardUtils()
CardUtils
验证卡号
使用 /// verify card number
let cardNumber = "4242424242424242"
let isCardValid = cardUtils.isValid(cardNumber: cardNumber)
CardTokenRequest
创建卡口通告 // create the phone number
let phoneNumber = CkoPhoneNumber(countryCode:number:)
// create the address
let address = CkoAddress(name:addressLine1:addressLine2:city:state:postcode:country:phone:)
// create the card token request
let cardTokenRequest = CkoCardTokenRequest(number:expiryMonth:expiryYear:cvv:name:billingAddress:)
创建卡口通告
let checkoutAPIClient = CheckoutAPIClient(publicKey: "pk_......", environment: .live)
// create the phone number
let phoneNumber = CkoPhoneNumber(countryCode:number:)
// create the address
let address = CkoAddress(name:addressLine1:addressLine2:city:state:postcode:country:phone:)
// create the card token request
let cardTokenRequest = CkoCardTokenRequest(number:expiryMonth:expiryYear:cvv:name:billingAddress:)
checkoutAPIClient.createCardToken(card: cardTokenRequest, successHandler: { cardTokenResponse in
// success
}, errorHandler { error in
// error
})
成功处理程序接受一个 CkoCardTokenResponse
数组作为参数。错误处理程序接受一个 ErrorResponse
作为参数。
协议
CheckoutSdkIos 根据 MIT 许可证发布。查看 LICENSE 获取详细信息。