QRCodeSwift (swift_qrcodejs)
Cross-platform QRCode generator written in pure Swift, aiming to solve the awkward situation that there's no CIFilter for QRCode generation on Apple Watches.
Installation
Swift Package Manager
with Xcode
More details in the Official Guide, but in general:
- Select in the menu bar of Xcode:
File
>Swift Packages
>Add Package Dependency
- Enter https://github.com/ApolloZhu/swift_qrcodejs.git
- Next, specify the version resolving rule as "Up to Next Major"
- Finish with choosing
QRCodeSwift
library and add it to your app target.
with Package.swift
dependencies: [
.package(url: "https://github.com/ApolloZhu/swift_qrcodejs.git", from: "2.2.2"),
]
... then add QRCodeSwift
module/target from package swift_qrcodejs
as your dependency.
CocoaPods
pod 'swift_qrcodejs', '~> 2.2.2'
Carthage
I assume you know what you are doing (because I don't), but you probably need something like this:
github "ApolloZhu/swift_qrcodejs" ~> 2.2.2
Note that Carthage doesn't work with Xcode 12 (but here's a workaround).
Manually
Add all the .swift
files from the Sources
folder into your project.
Usage
import QRCodeSwift
guard let qrCode = try? QRCode("Hello World!") else {
fatalError("Failed to generate QRCode")
}
print(qrCode.toString(filledWith: "##", patchedWith: " "))
For more, checkout the documentation.
Example Projects
- QRCodeSwiftCLI: lightweight command line tool to generate QRCodes.
- EFQRCode: popular Swift framework that generates stylized QRCode images.
- Apple Watch Bilibili: login onto bilibili with QRCode.
License
MIT License. Modified based on qrcodejs. See LICENSE and each individual file header for more information.