BitcoinPaymentURISwift is an open source library to handle the Bitcoin payment URI based on the BIT 21. The purpose of this library is to provide a simpler way to the developers to integrate in their applications support for this URI Scheme to easily make payments.
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
$ brew update
$ brew install carthage
To integrate BitcoinPaymentURISwift into your Xcode project using Carthage, specify it in your Cartfile
:
github "SandroMachado/BitcoinPaymentURISwift" ~> 1.0.0
Run carthage update
to build the framework and drag the built BitcoinPaymentURI.framework
into your Xcode project.
Parse the URI bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=50&label=Luke-Jr&message=Donation%20for%20project%20xyz
.
guard let bpuri = BitcoinPaymentURI.parse("bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?amount=50&label=Luke-Jr&message=Donation%20for%20project%20xyz") else {
return
}
bpuri.address? \\ 175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W
bpuri.amount? \\ 50
bpuri.label? \\ "Luke-Jr"
bpuri.message? \\ "Donation for project xyz"
bpuri.parameters?.count \\ 0
Generate the following URI bitcoin:175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W?label=Luke-Jr&foo=bar&amount=50.0&message=Donation%20for%20project%20xyz&req-fiz=biz
let bpuri: BitcoinPaymentURI = BitcoinPaymentURI(build: {
$0.address = "175tWpb8K1S7NmH4Zx6rewF9WQrcZv245W"
$0.amount = 50.0
$0.label = "Luke-Jr"
$0.message = "Donation for project xyz"
var newParameters: [String: Parameter] = [:]
newParameters["foo"] = Parameter(value: "bar", required: false)
newParameters["fiz"] = Parameter(value: "biz", required: true)
$0.parameters = newParameters
})