2015-03-11 9 views
5

Ich benötige für meine App die Anmeldung mit TouchId, aber ich möchte nicht, dass der Benutzer die Password-Option auswählt oder auswählt. Mit anderen Worten, ich möchte das "Passwort eingeben" -Label in der folgenden Abbildung ausblenden. Vielen Dank.TouchId ohne Passcode-Funktion

TouchId with Passcode option

Antwort

5

Soweit ich weiß, gibt es keine Möglichkeit, die Passwort-Option zu verbergen. Sie können zwar den Gerätepasscode als Rückfall verwenden.

Bitte beachten Sie, dass sich die Begriffe "Passcode" und "Passwort" auf eine andere Sache bei der TouchID-Integration beziehen.

"Password" wird für den LocalAuthentication-Ansatz verwendet, um TouchID zu integrieren und als Rückfallmethode auf das Anwendungskennwort zu verweisen.

Während "Passcode" auf den Passcode verweist, um das Gerät zu entsperren und den Kauf im App Store zu authentifizieren. Um diese Methode zu verwenden, müssen Sie einige Informationen im Keychain des Geräts speichern und über die Touch ID-Authentifizierung abrufen.

Mehr über diese beiden Ansätze here

iOS 9 Edit

Basierend auf diesen answer, iOS 9 eine neue Option bietet die Passcode-Option zu verbergen.

Für iOS 9 wurden zwei neue Richtlinien hinzugefügt, die nicht auf den Passcode zurückgreifen. Diese Richtlinien sind kSecAccessControlTouchIDAny und kSecAccessControlTouchIDCurrentSet

10

Die Antwort ist "Ja " .Sie können ausgeblendet "Passwort eingeben" ...

Versuchen Sie den folgenden Code-Schnipsel,

var LocalAuthentication = LAContext() 

LocalAuthentication.localizedFallbackTitle = "" // Add this line 

if LocalAuthentication.canEvaluatePolicy(LAPolicy.DeviceOwnerAuthenticationWithBiometrics, error: &errorMsg){ 

hinzufügen Diese Zeile vor der Überprüfung der Richtlinie ....

LocalAuthenticatio n.localizedFallbackTitle = ""

Hope this könnte Ihnen helfen ..

2

Per Dokumentation von LocalAuthentication.LAContext:

/// Fallback button title. 
/// @discussion Allows fallback button title customization. A default title "Enter Password" is used when 
///    this property is left nil. If set to empty string, the button will be hidden. 
open var localizedFallbackTitle: String? 
Verwandte Themen