Возникли проблемы с использованием LocalAuthentication и поддержкой iOS 7.0
когда я пытаюсь
import LocalAuthentication
У меня происходит сбой, если целевая версия iOS меньше 8.0.
Я попытался пометить LocalAuthentication.framework как необязательный на этапах сборки и проверить доступность класса, вызвав:
var isTouchIDSupported: Bool {
if let contextClass: AnyClass = NSClassFromString("LAContext") {
return LAContext().canEvaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, error: nil)
}
return false
}
он не сработает, если я прокомментирую строку LAContext(), например:
var isTouchIDSupported: Bool {
if let contextClass: AnyClass = NSClassFromString("LAContext") {
//return LAContext().canEvaluatePolicy(.DeviceOwnerAuthenticationWithBiometrics, error: nil)
}
return false
}
он падает в первые секунды запуска приложения, если я получаю доступ к любому классу LA (например, LAContext) в любом месте моего кода. Что я здесь делаю неправильно?
Журнал консоли для этого сбоя:
dyld: Symbol not found: _objc_isAuto
Referenced from: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/lib/libobjc.A.dylib
in /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation