Модуль TouchID - Домен ошибки = com.apple.LocalAuthentication Code = -1001 \ Неизвестная политика: «0» \

Я использую следующий модуль TouchID (версия 2.1.0 ) с SDK 5.5.1.GA. Но проблема в том, что когда я вызываю функцию isSupported() с помощью deviceCanAuthenticate(), я получаю следующую ошибку:

message = "Error Domain=com.apple.LocalAuthentication Code=-1001 \"Неизвестная политика: '0'\" UserInfo={NSLocalizedDescription=Неизвестная политика: '0'}";

Код, который я использую:

if (!TiTouchId.isSupported() || !TiTouchId.deviceCanAuthenticate().canAuthenticate) {
    alert("You cannot use this feature");
}

Но если я поменяю местами вызовы функций, вот так, то я не получаю ошибку:

if (!TiTouchId.deviceCanAuthenticate().canAuthenticate || !TiTouchId.isSupported()) {
    alert("You cannot use this feature");
}

Я не уверен, почему он ведет себя таким образом. Я загрузил модуль в сплав. js, чтобы иметь доступ к нему с любого контроллера.

Я тестирую его в iOS Simulator 9.3, а также на устройстве iPhone 6 Plus с iOS 10.2. В обоих случаях я получаю сообщение об ошибке. Кто-нибудь сталкивается с этой проблемой?


person Soumya    schedule 02.02.2017    source источник
comment
что происходит, когда вы вызываете только: TiTouchId.isSupported()?   -  person TheFuquan    schedule 03.02.2017
comment
В этом случае тоже выдает ошибку.   -  person Soumya    schedule 03.02.2017
comment
Согласно документации модуля, модуль требует ti sdk 6.0.0.GA.   -  person TheFuquan    schedule 03.02.2017
comment
Здесь вы можете найти полный пример для iOS github .com/appcelerator-modules/ti.touchid/blob/master/ios/   -  person TheFuquan    schedule 03.02.2017
comment
Возможно, вы забыли установить политику аутентификации через setAuthenticationPolicy.   -  person TheFuquan    schedule 03.02.2017
comment
Да. Настройка политики аутентификации разрешила это. Если вы упомянули это как ответ, я могу отметить это. Кроме того, minSDK, определенный в модуле, — это 5.5.1.GA, поэтому я думаю, что мы можем использовать его с 5.5.1.GA и использовать его.   -  person Soumya    schedule 07.02.2017
comment
Вы можете дать ответ и принять его самостоятельно, не беспокойтесь;) рад, что смог помочь :)   -  person TheFuquan    schedule 07.02.2017


Ответы (1)


Нам нужно вызвать setAuthenticationPolicy и передать информацию. Как только это будет сделано, проблема будет решена. (@TheFuquan предоставил разрешение)

person Soumya    schedule 06.02.2017