Swift : No Matter what I do CIDetector is always nil

前端 未结 4 1675
清歌不尽
清歌不尽 2021-01-03 16:52

i don\'t understand why this code doesn\'t work, the detector is always nil with the CIDetectorTypeQRCode constant, everything work with CIDetectorTypeFace. I Supect a bug f

相关标签:
4条回答
  • 2021-01-03 17:08

    I found that using on a device resolved this issue. The simulator seemed to always return nil for me.

    0 讨论(0)
  • 2021-01-03 17:15

    This happened to us as well. iPhone 4s doesn't return a CIDetector of type QRCode. The other types (rectangle, face) work though…

    The same code works as expected on the iPhone 6. Haven't tested on a 5 or 5s yet.

    But two weeks ago it was still working on the 4s, I believe. It was still on iOS 8 back then, I guess.

    0 讨论(0)
  • 2021-01-03 17:20

    The code you provided can't have a nil detector because it's not an optional and the compiler would complain about several places in your code if it was.

    If features is empty then you know it didn't find a QR code in your image. Try providing a better image or turning down the CIDetectorAccuracy.

    If features isn't empty then your cast is failing.

    Edit: You can't pass a nil context in the constructor.

    0 讨论(0)
  • 2021-01-03 17:30
    1. Make sure your ImgChoosed.image is not nil.
    2. Change another input image for testing.
    3. Try for feature in features as! [CIQRCodeFeature].
    0 讨论(0)
提交回复
热议问题