Scan-Swift
中文介绍
简介
Swift 封装 AVFoundation 代码扫描和 QR 码图像识别功能。
- 可以生成和识别 QR 码和条形码
- 支持自定义识别区域
- 支持 ScanView 和 ScanViewController 覆盖。
- 支持获取图片识别(平均结果)的相册
安装方法
CocoaPods
pod 'Scan-Swift'
Swift 包管理器
.package(url: "https://github.com/CainLuo/Scan-Swift.git", .upToNextMajor(from: "1.0.0"))
结构
- ScanView:用于扫描界面的遮罩层,提供要扫描的区域。
- ScanManager:核心类,主要用于封装用于识别、生成码的AVFoundation,目前支持《CIAztecCodeGenerator》、《CICode128BarcodeGenerator》、《CIPDF417BarcodeGenerator`和`CIQRCodeGenerator`。
- ScanResultModel:扫描后获得的数据,obj只能在扫描时获取,特征只能在识别QR二维码时获取。
- ScanConfigure:用于扫描时配置一些数据,支持某些特定的扫描类型。
- ScanError:扫描码时发生错误时获取的具体错误类型。
- ScanImageManager:图像管理类,具有添加Logo到QR码的方法,例如:缩放、裁剪。
- PermissionManager:权限管理类,目前仅限于访问相册权限和相机权限。
使用方式
建议使用ScanViewController和ScanView来实现自定义控制。
注意。
iOS 14增强了隐私权限,尤其是相册中的新功能《有限照片库访问》。如果不生效,将会一直弹出一个对话框。《PHPhotoLibraryPreventAutomaticLimitedAccessAlert》,将其设置为`YES`可以解决问题。
更详细的隐私权适配信息可以在以下链接中找到:[https://juejin.im/post/6850418120923250701](https://juejin.im/post/6850418120923250701)
版本
V1.0.0
- 支持:Swift 5.3,iOS 10,Xcode 11