ffa*_*uet 3 iphone camera delegates ios zbar-sdk
我有一个应用程序,应该能够在几分钟内扫描大量的QR码.所以它必须是被动的.我使用ZBarSDK,我很满意.
当代表收到数据时processScannedData:(NSString *)scannedData,我会显示一条必须手动关闭的消息.为了快速,我通过与AVCaptureDevice交互来锁定焦距,假设下一个QR码将以相同的距离呈现.
除了在一种情况下,该系统运行良好:当我在扫描后显示我的信息时,我不会停止相机以避免失去我刚刚锁定的焦点.如果您在解除消息之前提供下面的下一个QR代码,我的processScannedData:(NSString *)scannedData委托方法将捕获它并按预期忽略数据.唯一的问题是,如果您在此时关闭消息(将相机保持在QR码之上),将无法接收数据但是已经触发了委托方法,您将被迫在另一个方向上寻找几秒钟点,然后回到你的QR码.
所以这是我的问题:在我明确告诉他这样做之前,是否可以告诉ZBar我不希望他解雇委托方法?是否可以在不停止相机的情况下停止处理数据?
谢谢您的帮助
好的,所以我找到了解决问题的方法.
我认为在相机工作时无法修改ZBarSDK配置,但这是一个错误.
这是必须使用的工作代码:
- (void)disableQRCodeDetection
{
// disabling all symbols detection for performance reasons
[self.scanner setSymbology: 0
config: ZBAR_CFG_ENABLE
to: 0];
}
- (void)enableQRCodeDetection
{
// We enable QR Code detection
[self.scanner setSymbology: ZBAR_QRCODE
config: ZBAR_CFG_ENABLE
to: 1];
}
Run Code Online (Sandbox Code Playgroud)
这非常棒,您可以在相机工作时调整您想要检测的代码类型!