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](https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app), but in general: 1. Select in the menu bar of Xcode: `File` > `Swift Packages` > `Add Package Dependency` 2. Enter https://github.com/ApolloZhu/swift_qrcodejs.git 2. Next, specify the version resolving rule as “Up to Next Major” 3. Finish with choosing `QRCodeSwift` library and add it to your app target.with Package.swift
“`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
”`ruby 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: ”`ruby github “ApolloZhu/swift_qrcodejs” ~> 2.2.2 “` Note that [Carthage doesn’t work with Xcode 12](https://github.com/Carthage/Carthage/issues/3019) (but here’s a [workaround](https://github.com/Carthage/Carthage/blob/master/Documentation/Xcode12Workaround.md)).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.