B4i Library iOS - TouchID

Hi All,

This code will allow to use the TouchID (Fingerprint) in your app.
The example is on a button named Button with click event.

I was thinking to build a class for this but I think this is more comfortable to copy the source and modify the subs.

#PlistExtra: <key>NSFaceIDUsageDescription</key<string>Uses face id to allow authentication</string>
Sub Button_Click
ShowTouchID(Me,"TouchOK", "TouchFail")
End Sub

Sub ShowTouchID(SubHandler As Object, ApprovedSub As String, FailSub As String)
Dim noMe As NativeObject=Me
End Sub

Sub TouchOK
Log("Touch Approved")
End Sub

Sub TouchFail(ErrorDescription As String)
End Sub


#import <LocalAuthentication/LocalAuthentication.h>

-(void)TouchID :(NSObject*)handler :(NSString*) subnameok :(NSString*) subnamefail
LAContext *myContext = [[LAContext alloc] init];
NSError *authError = nil;
NSString *myLocalizedReasonString = @"Used for quick and secure access to the test app";
if ([myContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&authError]) {
    [myContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
                            reply:^(BOOL success, NSError *error) {
            if (success) {
                [self.__c CallSubDelayed:self.bi :handler :(subnameok)];
            } else {
                [self.__c CallSubDelayed2:self.bi :handler :(subnamefail) :(error.localizedDescription)];
} else {
[self.__c CallSubDelayed2:self.bi :handler :(subnamefail) :(authError.localizedDescription)];


#End If

Ask if you have any questions

Last edited by a moderator:


Well-Known Member
Licensed User
It took me exactly 3 seconds to see that you haven't carefully checked the text as I've asked you to...
Sorry... I didn’t understand where actually ..

Edit: I didn’t understand that with “text attribute” you was meaning the plisextra.
I was looking in the objective C code...
I now found out that in the @narek adonts PlisExtra an “<\key>” is wrote incorrectly , the “>” is missing
Last edited: