Determine if an iOS device supports TouchID without setting passcode

前端 未结 7 1758
一生所求
一生所求 2020-12-25 13:27

I\'m currently developing an iOS app that enables users to log in to the app using TouchID, but firstly they must set up a password inside the app first. Problem is, to show

7条回答
  •  温柔的废话
    2020-12-25 14:07

    In conclusion of the discussion below, for the time being it is not possible to determine whether a device actually supports TouchID or not when the user hasn't set up passcode on their device.

    I have reported this TouchID flaw on the Apple bug reporter. Those who want to follow the issue can see it on Open Radar here: http://www.openradar.me/20342024

    Thanks @rckoenes for the input :)

    EDIT

    Turns out that someone has reported a similar issue already (#18364575). Here is Apple's reply regarding the issue:

    "Engineering has determined that this issue behaves as intended based on the following information:

    If passcode is not set, you will not be able to detect Touch ID presence. Once the passcode is set, canEvaluatePolicy will eventually return LAErrorTouchIDNotAvailable or LAErrorTouchIdNotEnrolled and you will be able to detect Touch ID presence/state.

    If users have disabled passcode on phone with Touch ID, they knew that they will not be able to use Touch ID, so the apps don't need to detect Touch ID presence or promote Touch ID based features. "

    So..... the final answer from Apple is No. :(

    Note: similar StackOverflow question from the person who reported this -> iOS8 check if device has Touch ID (wonder why I didn't find this question before despite my extensive searching...)

提交回复
热议问题