Съемка видео
Для старта записи видео используется метод startActivityForResult
:
val intent = OzLivenessSDK.createStartIntent(listOf(OzAction.Smile, OzAction.Blank))
startActivityForResult(intent, REQUEST_CODE)
actions
– перечень действий пользователя при записи видео.
Для представления Fragment код приведен ниже. LivenessFragment
– Fragment для экрана Liveness.
childFragmentManager.beginTransaction()
.replace(R.id.content, LivenessFragment.create(actions))
.commit()
// подписка на результат Fragment
childFragmentManager.setFragmentResultListener(OzLivenessSDK.Extra.REQUEST_CODE, this) { _, result ->
when (result.getInt(OzLivenessSDK.Extra.EXTRA_RESULT_CODE)) {
OzLivenessResultCode.SUCCESS -> { /* запуск анализа */ }
else -> { /* вывод ошибки */ }
}
}
Для получения результатов записи видео используется метод onActivityResult
:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == REQUEST_CODE) {
sdkMediaResult = OzLivenessSDK.getResultFromIntent(data)
sdkErrorString = OzLivenessSDK.getErrorFromIntent(data)
}
}
sdkMediaResult
– объект с результатами записи видео (OzAbstractMedia) для дальнейшего использования при взаимодействии с Oz API.sdkErrorString
– описание ошибок в случае их возникновения.
Если пользователь прервет запись видео (закроет экран), resultCode
примет значение Activity.RESULT_CANCELED
.
Пример кода для обработки:
when (resultCode) {
Activity.RESULT_CANCELED -> *USER CLOSED THE SCREEN*
OzLivenessResultCode.SUCCESS -> {
val sdkMediaResult = OzLivenessSDK.getResultFromIntent(data)
*SUCCESS*
}
else -> {
val errorMessage = OzLivenessSDK.getErrorFromIntent(data)
*FAILURE*
}
}
Last updated
Was this helpful?