Code Examples
This section provides example code related to the different facial biometric methods:
CMIDRecognitionMode.enrollment
CMIDRecognitionMode.verification
CMIDRecognitionMode.identification
Performing an enrollment
To perform an enrollment, you will need to use the property CMIDRecognitionMode.enrollment
as the recognitionMode
parameter.
You will also need to create a new instance of the CMIDEnrollmentParameters
class, which extends CMIDRecognitionParameters
.
Finally, you can create a class conforming to the CMIDEnrollmentListener
protocol, which requires implementing the onEnrollmentFinishedResult:
method, to be notified about the status of the operation.
CMIDRecognitionMode
CMIDRecognitionMode *recognitionMode = CMIDRecognitionMode.enrollment;
let recognitionMode = MIDRecognitionMode.enrollment
CMIDEnrollmentParameters
CMIDRecognitionParameters *recognitionParameters = [[CMIDEnrollmentParameters alloc] initWithUserId:@"user_id"];
let recognitionParameters: MIDRecognitionParameters = MIDEnrollmentParameters(userId: "user_id")
CMIDEnrollmentListener
@interface Listener : UIViewController <CMIDEnrollmentListener>
(...)
@end
@implementation Listener
- (void)onEnrollmentFinishedResult:(nonnull CMIDEnrollmentListenerResult *)result data:(CMIDEnrollmentData *)data errorOccurred:(CMIDError * _Nullable)errorOccurred {
if (result == CMIDEnrollmentListenerResult.error) {
[manageError:errorOccurred];
} else {
[manageResult:data];
}
}
@end
class Listener: MIDEnrollmentListener {
func onEnrollmentFinished(result: MIDEnrollmentListenerResult, data: MIDEnrollmentData?, errorOccurred: MIDError?) {
guard result != .error else {
manageError(errorOccurred)
return
}
manageResult(data)
}
}
Performing a verification
Similarly, you can perform a verification by following the same procedure as above.
CMIDRecognitionMode
:
CMIDRecognitionMode *recognitionMode = CMIDRecognitionMode.verification;
let recognitionMode = MIDRecognitionMode.verification
CMIDVerificationParameters
:
CMIDRecognitionParameters *recognitionParameters = [[CMIDVerificationParameters alloc] initWithUserId:@"user_id"];
let recognitionParameters: MIDRecognitionParameters = MIDVerificationParameters(userId: "user_id")
CMIDVerificationListener
:
@interface Listener : UIViewController <CMIDVerificationListener>
(...)
@end
@implementation Listener
- (void)onVerificationFinishedResult:(CMIDVerificationListenerResult *)result data:(CMIDVerificationData * _Nullable)data errorOccurred:(CMIDError * _Nullable)errorOccurred
if (result == CMIDEnrollmentListenerResult.error) {
[manageError:errorOccurred];
} else {
[manageResult:data];
}
}
@end
class Listener: MIDVerificationListener {
func onVerificationFinished(result: MIDVerificationListenerResult, data: MIDVerificationData?, errorOccurred: MIDError?) {
guard result != .error else {
manageError(errorOccurred)
return
}
manageResult(data)
}
}
Performing an identification
CMIDRecognitionMode
:
CMIDRecognitionMode *recognitionMode = CMIDRecognitionMode.identification;
let recognitionMode = MIDRecognitionMode.identification
CMIDIdentificationParameters
:
CMIDRecognitionParameters *recognitionParameters = [[CMIDIdentificationParameters alloc] initWithGroupId:@"group_id"];
let recognitionParameters: MIDRecognitionParameters = MIDIdentificationParameters(groupId: "group_id")
CMIDIdentificationListener
:
@interface Listener : UIViewController <CMIDIdentificationListener>
(...)
@end
@implementation Listener
- (void)onIdentificationFinishedResult:(CMIDIdentificationListenerResult *)result data:(CMIDIdentificationData * _Nullable)data errorOccurred:(CMIDError * _Nullable)errorOccurred {
if (result == CMIDEnrollmentListenerResult.error) {
[manageError:errorOccurred];
} else {
[manageResult:data];
}
}
@end
class Listener: MIDIdentificationListener {
func onIdentificationFinished(result: MIDIdentificationListenerResult, data: MIDIdentificationData?, errorOccurred: MIDError?) {
guard result != .error else {
manageError(errorOccurred)
return
}
manageResult(data)
}
}
Launch the facial biometric method
[faceSDK startRecognitionMode:recognitionMode
parameters:recognitionParameters
operationListener:listener];
faceSDK.start(recognitionMode: recognitionMode,
parameters: recognitionParameters,
operationListener: listener)