@@ -28,27 +28,29 @@ struct ExampleLivenessView: View {
2828 set: { _ in }
2929 ) ,
3030 onCompletion: { result in
31- switch result {
32- case . success:
33- withAnimation { viewModel. presentationState = . result }
34- case . failure( . sessionNotFound) , . failure( . cameraPermissionDenied) , . failure( . accessDenied) :
35- viewModel. presentationState = . liveness
36- isPresented = false
37- case . failure( . userCancelled) :
38- viewModel. presentationState = . liveness
39- isPresented = false
40- case . failure( . sessionTimedOut) :
41- viewModel. presentationState = . error( . sessionTimedOut)
42- case . failure( . socketClosed) :
43- viewModel. presentationState = . error( . socketClosed)
44- case . failure( . countdownNoFace) , . failure( . countdownFaceTooClose) , . failure( . countdownMultipleFaces) :
45- viewModel. presentationState = . error( . countdownFaceTooClose)
46- case . failure( . invalidSignature) :
47- viewModel. presentationState = . error( . invalidSignature)
48- case . failure( . cameraNotAvailable) :
49- viewModel. presentationState = . error( . cameraNotAvailable)
50- default :
51- viewModel. presentationState = . liveness
31+ DispatchQueue . main. async {
32+ switch result {
33+ case . success:
34+ withAnimation { viewModel. presentationState = . result }
35+ case . failure( . sessionNotFound) , . failure( . cameraPermissionDenied) , . failure( . accessDenied) :
36+ viewModel. presentationState = . liveness
37+ isPresented = false
38+ case . failure( . userCancelled) :
39+ viewModel. presentationState = . liveness
40+ isPresented = false
41+ case . failure( . sessionTimedOut) :
42+ viewModel. presentationState = . error( . sessionTimedOut)
43+ case . failure( . socketClosed) :
44+ viewModel. presentationState = . error( . socketClosed)
45+ case . failure( . countdownNoFace) , . failure( . countdownFaceTooClose) , . failure( . countdownMultipleFaces) :
46+ viewModel. presentationState = . error( . countdownFaceTooClose)
47+ case . failure( . invalidSignature) :
48+ viewModel. presentationState = . error( . invalidSignature)
49+ case . failure( . cameraNotAvailable) :
50+ viewModel. presentationState = . error( . cameraNotAvailable)
51+ default :
52+ viewModel. presentationState = . liveness
53+ }
5254 }
5355 }
5456 )
0 commit comments