Class RecognizerRunnerView
- java.lang.Object
-
- android.view.View
-
- android.view.ViewGroup
-
- com.microblink.documentverification.view.BaseCameraView
-
- com.microblink.documentverification.view.CameraViewGroup
-
- com.microblink.documentverification.view.recognition.RecognizerRunnerView
-
- All Implemented Interfaces:
android.graphics.drawable.Drawable.Callback,android.view.accessibility.AccessibilityEventSource,android.view.KeyEvent.Callback,android.view.ViewManager,android.view.ViewParent,androidx.lifecycle.LifecycleObserver
public final class RecognizerRunnerView extends CameraViewGroup implements androidx.lifecycle.LifecycleObserver
A view that controls the camera and recognition procedure.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.microblink.documentverification.view.CameraViewGroup
CameraViewGroup.CameraViewGroupOrientationChangeListener, CameraViewGroup.LayoutParams
-
Nested classes/interfaces inherited from class com.microblink.documentverification.view.BaseCameraView
BaseCameraView.BaseCameraListener, BaseCameraView.BaseCameraViewEventsListener, BaseCameraView.BaseOrientationChangeListener, BaseCameraView.CameraViewState, BaseCameraView.VisiblePartUpdateListener
-
Nested classes/interfaces inherited from class android.view.ViewGroup
android.view.ViewGroup.MarginLayoutParams, android.view.ViewGroup.OnHierarchyChangeListener
-
Nested classes/interfaces inherited from class android.view.View
android.view.View.AccessibilityDelegate, android.view.View.BaseSavedState, android.view.View.DragShadowBuilder, android.view.View.MeasureSpec, android.view.View.OnApplyWindowInsetsListener, android.view.View.OnAttachStateChangeListener, android.view.View.OnCapturedPointerListener, android.view.View.OnClickListener, android.view.View.OnContextClickListener, android.view.View.OnCreateContextMenuListener, android.view.View.OnDragListener, android.view.View.OnFocusChangeListener, android.view.View.OnGenericMotionListener, android.view.View.OnHoverListener, android.view.View.OnKeyListener, android.view.View.OnLayoutChangeListener, android.view.View.OnLongClickListener, android.view.View.OnScrollChangeListener, android.view.View.OnSystemUiVisibilityChangeListener, android.view.View.OnTouchListener, android.view.View.OnUnhandledKeyEventListener
-
-
Field Summary
-
Fields inherited from class com.microblink.documentverification.view.BaseCameraView
mAspectMode, mCameraEventsListener, mCameraSurfaceView, mCameraViewState, mConfigurationOrientation, mDeviceManager, mErrorState, mHostScreenOrientation, mInitialOrientation, mIsRequestedOrientationSensor, mIsRequestedOrientationUser, mOnActivityFlipListener, mPreviewZoomScale, mRotateMeteringAreas, mSlaveOrientationChangeListeners
-
Fields inherited from class android.view.ViewGroup
CLIP_TO_PADDING_MASK, FOCUS_AFTER_DESCENDANTS, FOCUS_BEFORE_DESCENDANTS, FOCUS_BLOCK_DESCENDANTS, LAYOUT_MODE_CLIP_BOUNDS, LAYOUT_MODE_OPTICAL_BOUNDS, PERSISTENT_ALL_CACHES, PERSISTENT_ANIMATION_CACHE, PERSISTENT_NO_CACHE, PERSISTENT_SCROLLING_CACHE
-
Fields inherited from class android.view.View
ACCESSIBILITY_LIVE_REGION_ASSERTIVE, ACCESSIBILITY_LIVE_REGION_NONE, ACCESSIBILITY_LIVE_REGION_POLITE, ALPHA, AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR, AUTOFILL_HINT_CREDIT_CARD_NUMBER, AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE, AUTOFILL_HINT_EMAIL_ADDRESS, AUTOFILL_HINT_NAME, AUTOFILL_HINT_PASSWORD, AUTOFILL_HINT_PHONE, AUTOFILL_HINT_POSTAL_ADDRESS, AUTOFILL_HINT_POSTAL_CODE, AUTOFILL_HINT_USERNAME, AUTOFILL_TYPE_DATE, AUTOFILL_TYPE_LIST, AUTOFILL_TYPE_NONE, AUTOFILL_TYPE_TEXT, AUTOFILL_TYPE_TOGGLE, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAWING_CACHE_QUALITY_AUTO, DRAWING_CACHE_QUALITY_HIGH, DRAWING_CACHE_QUALITY_LOW, EMPTY_STATE_SET, ENABLED_FOCUSED_SELECTED_STATE_SET, ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_FOCUSED_STATE_SET, ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, ENABLED_SELECTED_STATE_SET, ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_STATE_SET, ENABLED_WINDOW_FOCUSED_STATE_SET, FIND_VIEWS_WITH_CONTENT_DESCRIPTION, FIND_VIEWS_WITH_TEXT, FOCUS_BACKWARD, FOCUS_DOWN, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUSABLE, FOCUSABLE_AUTO, FOCUSABLES_ALL, FOCUSABLES_TOUCH_MODE, FOCUSED_SELECTED_STATE_SET, FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, FOCUSED_STATE_SET, FOCUSED_WINDOW_FOCUSED_STATE_SET, GONE, HAPTIC_FEEDBACK_ENABLED, IMPORTANT_FOR_ACCESSIBILITY_AUTO, IMPORTANT_FOR_ACCESSIBILITY_NO, IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, IMPORTANT_FOR_ACCESSIBILITY_YES, IMPORTANT_FOR_AUTOFILL_AUTO, IMPORTANT_FOR_AUTOFILL_NO, IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_AUTOFILL_YES, IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, IMPORTANT_FOR_CONTENT_CAPTURE_NO, IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_YES, IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS, INVISIBLE, KEEP_SCREEN_ON, LAYER_TYPE_HARDWARE, LAYER_TYPE_NONE, LAYER_TYPE_SOFTWARE, LAYOUT_DIRECTION_INHERIT, LAYOUT_DIRECTION_LOCALE, LAYOUT_DIRECTION_LTR, LAYOUT_DIRECTION_RTL, MEASURED_HEIGHT_STATE_SHIFT, MEASURED_SIZE_MASK, MEASURED_STATE_MASK, MEASURED_STATE_TOO_SMALL, NO_ID, NOT_FOCUSABLE, OVER_SCROLL_ALWAYS, OVER_SCROLL_IF_CONTENT_SCROLLS, OVER_SCROLL_NEVER, PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET, PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_SELECTED_STATE_SET, PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_STATE_SET, PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_SELECTED_STATE_SET, PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_STATE_SET, PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_SELECTED_STATE_SET, PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_STATE_SET, PRESSED_WINDOW_FOCUSED_STATE_SET, ROTATION, ROTATION_X, ROTATION_Y, SCALE_X, SCALE_Y, SCREEN_STATE_OFF, SCREEN_STATE_ON, SCROLL_AXIS_HORIZONTAL, SCROLL_AXIS_NONE, SCROLL_AXIS_VERTICAL, SCROLL_CAPTURE_HINT_AUTO, SCROLL_CAPTURE_HINT_EXCLUDE, SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS, SCROLL_CAPTURE_HINT_INCLUDE, SCROLL_INDICATOR_BOTTOM, SCROLL_INDICATOR_END, SCROLL_INDICATOR_LEFT, SCROLL_INDICATOR_RIGHT, SCROLL_INDICATOR_START, SCROLL_INDICATOR_TOP, SCROLLBAR_POSITION_DEFAULT, SCROLLBAR_POSITION_LEFT, SCROLLBAR_POSITION_RIGHT, SCROLLBARS_INSIDE_INSET, SCROLLBARS_INSIDE_OVERLAY, SCROLLBARS_OUTSIDE_INSET, SCROLLBARS_OUTSIDE_OVERLAY, SELECTED_STATE_SET, SELECTED_WINDOW_FOCUSED_STATE_SET, SOUND_EFFECTS_ENABLED, STATUS_BAR_HIDDEN, STATUS_BAR_VISIBLE, SYSTEM_UI_FLAG_FULLSCREEN, SYSTEM_UI_FLAG_HIDE_NAVIGATION, SYSTEM_UI_FLAG_IMMERSIVE, SYSTEM_UI_FLAG_IMMERSIVE_STICKY, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, SYSTEM_UI_FLAG_LAYOUT_STABLE, SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR, SYSTEM_UI_FLAG_LIGHT_STATUS_BAR, SYSTEM_UI_FLAG_LOW_PROFILE, SYSTEM_UI_FLAG_VISIBLE, SYSTEM_UI_LAYOUT_FLAGS, TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_GRAVITY, TEXT_ALIGNMENT_INHERIT, TEXT_ALIGNMENT_TEXT_END, TEXT_ALIGNMENT_TEXT_START, TEXT_ALIGNMENT_VIEW_END, TEXT_ALIGNMENT_VIEW_START, TEXT_DIRECTION_ANY_RTL, TEXT_DIRECTION_FIRST_STRONG, TEXT_DIRECTION_FIRST_STRONG_LTR, TEXT_DIRECTION_FIRST_STRONG_RTL, TEXT_DIRECTION_INHERIT, TEXT_DIRECTION_LOCALE, TEXT_DIRECTION_LTR, TEXT_DIRECTION_RTL, TRANSLATION_X, TRANSLATION_Y, TRANSLATION_Z, VIEW_LOG_TAG, VISIBLE, WINDOW_FOCUSED_STATE_SET, X, Y, Z
-
-
Constructor Summary
Constructors Constructor Description RecognizerRunnerView(android.content.Context context)RecognizerRunnerView(android.content.Context context, android.util.AttributeSet attrSet)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcaptureHighResImage(com.microblink.documentverification.view.recognition.HighResImageListener highResImageListener)Starts capturing frame at full camera resolution and notifies listener once it's done.protected voidchangeConfigurationInternal(android.content.res.Configuration newConfig)voidcreate()This method must be called from activity's onCreate.protected com.microblink.documentverification.hardware.camera.CameraListenercreateCameraListener()ABSTRACT METHODSprotected com.microblink.documentverification.hardware.orientation.OrientationChangeListenercreateOrientationChangeListener()voiddestroy()This method must be called from activity's onDestroy.RecognizerBundlegetRecognizerBundle()Returns the currently active recognizer bundle.RectanglegetScanningRegion()Returns the current scanning region or null if entire image is scanned.ScanResultListenergetScanResultListener()Returns the listener that will obtain the results of the scanning.booleanisScanningPaused()Returns true if scanning is paused or if scanning still has not yet started.protected voidonActivityFlip()Called when activity is flipped - this event is not raised by OS so we have custom detection of that state.protected voidonCameraPreviewStarted()protected voidonCameraPreviewStopped()voidpause()This method must be called from activity's onPause.voidpauseScanning()Pauses the scanning loop.protected voidprepareCameraSettings(com.microblink.documentverification.hardware.camera.CameraSettings settings)Called inside onCreate method before creating camera manager.voidreconfigureRecognizers(RecognizerBundle recognizerBundle)Use this method to reconfigure available recognizers.protected booleanrequireAutofocusFeature()If autofocus feature is required, please return true from this method.voidresetRecognitionState()Resets the recognition state, i.e.voidresetRecognitionState(boolean hardReset)Resets the recognition state.voidresume()This method must be called from activity's onResume.voidresumeScanning(boolean resetState)This method resumes scanning loop that was paused by callingpauseScanning().voidsetFrameRecognitionCallback(com.microblink.documentverification.view.recognition.FrameRecognitionCallback frameRecognitionCallback)Sets the frame recognition callback that will be invoked for each camera frame, after the recognition has been completed.voidsetLifecycle(androidx.lifecycle.Lifecycle lifecycle)voidsetMetadataCallbacks(MetadataCallbacks metadataCallbacks)Sets the metadata callbacks that will obtain metadata during processing.voidsetRecognizerBundle(RecognizerBundle recognizerBundle)Sets the recognizer bundle containing recognizers that will perform the recognition.voidsetScanningRegion(Rectangle scanningRegion, boolean rotateRegionWithDevice)Define scanning region as a rectangle.voidsetScanResultListener(ScanResultListener scanResultListener)Sets the listener that will obtain the results of the scanning.booleanshouldRotateScanningRegion()Returns true if scanning region should be rotated with device.protected booleanshouldStartCamera()voidstart()This method must be called from activity's onStart.voidstop()This method must be called from activity's onStop.-
Methods inherited from class com.microblink.documentverification.view.CameraViewGroup
addChildView, addChildView, addView, addView, addView, addView, addView, checkLayoutParams, dispatchTouchEvent, generateDefaultLayoutParams, generateLayoutParams, getRotationAnimationDuration, setAnimateRotation, setInitialOrientation, setRotationAnimationDuration, shouldAnimateRotation
-
Methods inherited from class com.microblink.documentverification.view.BaseCameraView
addOrientationChangeListener, areCameraPixelsLandscapeLeft, calculateHostScreenOrientation, captureHighResFrame, changeConfiguration, createCameraViewEventsListener, focusCamera, getAspectMode, getCameraEventsListener, getCameraFactorySettings, getCameraPreviewHeight, getCameraPreviewWidth, getCameraSensorOrientation, getCameraViewState, getConfigurationOrientation, getCurrentOrientation, getHighResFrameLimit, getHostActivity, getHostScreenOrientation, getInitialOrientation, getOpenedCameraType, getPreviewZoomScale, getVisiblePart, getZoomLevel, isAutofocusSupported, isCameraActive, isCameraFocused, isCameraTorchSupported, isDeviceShaking, isHighResFrameCaptureEnabled, isHostActivityOrientationOnSensor, isOrientationAllowed, isPinchToZoomAllowed, isRequestedOrientationSensor, isRequestedOrientationUser, isTapToFocusAllowed, onLayout, onMeasure, removeOrientationChangeListener, runOnUIThread, setAspectMode, setCameraEventsListener, setCameraFrameFactory, setCameraType, setForceUseLegacyCamera, setHighResFrameCaptureEnabled, setHighResFrameLimit, setMeteringAreas, setMeteringAreasToCamera, setOnActivityFlipListener, setOnSizeChangedListener, setOptimizeCameraForNearScan, setOrientationAllowedListener, setPinchToZoomAllowed, setPreviewZoomScale, setRequestAutofocusOnShakingStopInContinousAutofocusMode, setRequestedSurfaceViewForCameraDisplay, setShakeListener, setTapToFocusAllowed, setTorchState, setVideoResolutionPreset, setVisiblePartUpdateListener, setZoomLevel
-
Methods inherited from class android.view.ViewGroup
addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, addViewInLayout, addViewInLayout, attachLayoutAnimationParameters, attachViewToParent, bringChildToFront, canAnimate, childDrawableStateChanged, childHasTransientStateChanged, cleanupLayoutState, clearChildFocus, clearDisappearingChildren, clearFocus, debug, detachAllViewsFromParent, detachViewFromParent, detachViewFromParent, detachViewsFromParent, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchCreateViewTranslationRequest, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, endViewTransition, findFocus, findViewsWithText, focusableViewAvailable, focusSearch, gatherTransparentRegion, generateLayoutParams, getAccessibilityClassName, getChildAt, getChildCount, getChildDrawingOrder, getChildDrawingOrder, getChildMeasureSpec, getChildStaticTransformation, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, hasFocus, hasTransientState, indexOfChild, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isChildrenDrawingOrderEnabled, isChildrenDrawnWithCacheEnabled, isLayoutSuppressed, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onAttachedToWindow, onCreateDrawableState, onDescendantInvalidated, onDetachedFromWindow, onInterceptHoverEvent, onInterceptTouchEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestFocusInDescendants, onRequestSendAccessibilityEvent, onResolvePointerIcon, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestChildRectangleOnScreen, requestDisallowInterceptTouchEvent, requestFocus, requestSendAccessibilityEvent, requestTransparentRegion, restoreDefaultFocus, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setChildrenDrawingCacheEnabled, setChildrenDrawingOrderEnabled, setChildrenDrawnWithCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setStaticTransformationsEnabled, setTouchscreenBlocksFocus, setTransitionGroup, setWindowInsetsAnimationCallback, shouldDelayChildPressedState, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, updateViewLayout
-
Methods inherited from class android.view.View
addFocusables, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, animate, announceForAccessibility, autofill, autofill, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAnimation, clearViewTranslationCallback, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateDisplayHash, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentCaptureSession, getContentDescription, getContext, getContextMenuInfo, getDefaultFocusHighlightEnabled, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getExplicitStyle, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintBlendMode, getForegroundTintList, getForegroundTintMode, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getHorizontalScrollbarThumbDrawable, getHorizontalScrollbarTrackDrawable, getId, getImportantForAccessibility, getImportantForAutofill, getImportantForContentCapture, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPivotX, getPivotY, getPointerIcon, getReceiveContentMimeTypes, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootSurfaceControl, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollCaptureHint, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getSourceLayoutResId, getStateDescription, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemGestureExclusionRects, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getUniqueDrawingId, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarThumbDrawable, getVerticalScrollbarTrackDrawable, getVerticalScrollbarWidth, getViewTranslationResponse, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowId, getWindowInsetsController, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isClickable, isContextClickable, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isForceDarkAllowed, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isImportantForContentCapture, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPivotSet, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCheckIsTextEditor, onConfigurationChanged, onCreateContextMenu, onCreateInputConnection, onCreateViewTranslationRequest, onCreateVirtualViewTranslationRequests, onDisplayHint, onDragEvent, onDraw, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onGenericMotionEvent, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onReceiveContent, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollCaptureSearch, onScrollChanged, onSetAlpha, onSizeChanged, onStartTemporaryDetach, onTouchEvent, onTrackballEvent, onViewTranslationResponse, onVirtualViewTranslationResponses, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, performReceiveContent, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestLayout, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setBackground, setBackgroundColor, setBackgroundDrawable, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundGravity, setForegroundTintBlendMode, setForegroundTintList, setForegroundTintMode, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHorizontalScrollbarThumbDrawable, setHorizontalScrollbarTrackDrawable, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setImportantForContentCapture, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLayoutParams, setLeft, setLeftTopRightBottom, setLongClickable, setMeasuredDimension, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnReceiveContentListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setOverScrollMode, setPadding, setPaddingRelative, setPivotX, setPivotY, setPointerIcon, setPressed, setRenderEffect, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollCaptureCallback, setScrollCaptureHint, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateDescription, setStateListAnimator, setSystemGestureExclusionRects, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVerticalScrollbarThumbDrawable, setVerticalScrollbarTrackDrawable, setViewTranslationCallback, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDraw
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface android.view.ViewParent
canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows, requestLayout
-
-
-
-
Method Detail
-
create
@UiThread public void create()
This method must be called from activity's onCreate. If not called, recognition will not work.- Overrides:
createin classCameraViewGroup- Throws:
java.lang.UnsatisfiedLinkError- if native library could not be loadedjava.lang.NullPointerException- if scan result listener or camera events listener is not setjava.lang.IllegalStateException- if recognizer settings array is null or empty
-
setLifecycle
public void setLifecycle(@NonNull androidx.lifecycle.Lifecycle lifecycle)Sets lifecycle that will be observed so that you don't have to manually callcreate(),resume()and other lifecycle methods.- Parameters:
lifecycle- lifecycle that will be observed
-
prepareCameraSettings
protected final void prepareCameraSettings(@NonNull com.microblink.documentverification.hardware.camera.CameraSettings settings)Description copied from class:BaseCameraViewCalled inside onCreate method before creating camera manager. Use this method to create camera settings that are used on each startPreview event.- Overrides:
prepareCameraSettingsin classBaseCameraView
-
start
@MainThread public final void start()
This method must be called from activity's onStart. If not called, recognition will not work.- Overrides:
startin classBaseCameraView
-
stop
@MainThread public final void stop()
This method must be called from activity's onStop. If not called, recognition will not work.- Overrides:
stopin classBaseCameraView
-
resume
@MainThread public final void resume()
This method must be called from activity's onResume. If not called, recognition will not work.- Overrides:
resumein classBaseCameraView
-
resumeScanning
@AnyThread public final void resumeScanning(boolean resetState)
This method resumes scanning loop that was paused by callingpauseScanning(). If resetState is 'true',resetRecognitionState()will be called. If resetState is 'false', recognition state will not be reset, so scanning after resume may use old scan data to boost quality.pauseScanning()andresumeScanning(boolean)are counting calls. This means that if you calledpauseScanning()twice, you will also have to callresumeScanning(boolean)twice to actually resume scanning.- Parameters:
resetState- should internal state be reset when resuming scanning
-
pauseScanning
@AnyThread public final void pauseScanning()
Pauses the scanning loop. But keeps camera active. You can resume scanning by callingresumeScanning(boolean).pauseScanning()andresumeScanning(boolean)are counting calls. This means that if you calledpauseScanning()twice, you will also have to callresumeScanning(boolean)to actually resume scanning.
-
pause
@MainThread public final void pause()
This method must be called from activity's onPause. If not called, recognition will not work. This method pauses the camera.- Overrides:
pausein classBaseCameraView
-
onCameraPreviewStopped
protected void onCameraPreviewStopped()
- Overrides:
onCameraPreviewStoppedin classBaseCameraView
-
destroy
@MainThread public final void destroy()
This method must be called from activity's onDestroy. If not called, recognition will not work.- Overrides:
destroyin classBaseCameraView
-
shouldStartCamera
protected final boolean shouldStartCamera()
- Overrides:
shouldStartCamerain classBaseCameraView
-
onCameraPreviewStarted
protected void onCameraPreviewStarted()
- Overrides:
onCameraPreviewStartedin classBaseCameraView
-
resetRecognitionState
@AnyThread public final void resetRecognitionState()
Resets the recognition state, i.e. clears the cached data and all scanning results. Recognition starts from the beginning.
-
resetRecognitionState
@AnyThread public final void resetRecognitionState(boolean hardReset)
Resets the recognition state. If hard reset is requested, clears the cached data and all scanning results and recognition starts from the beginning. Otherwise, if soft reset is requested and the recognition is consisted of multiple steps, clears the scanning cache and results only for the current step.- Parameters:
hardReset-trueto request hard reset,falsefor the soft reset.
-
isScanningPaused
@AnyThread public boolean isScanningPaused()
Returns true if scanning is paused or if scanning still has not yet started.- Returns:
- true if scanning is paused or if scanning still has not yet started.
-
reconfigureRecognizers
@MainThread public void reconfigureRecognizers(@Nullable RecognizerBundle recognizerBundle)Use this method to reconfigure available recognizers. UnlikesetRecognizerBundle(RecognizerBundle), this method can be called when recognizers are active.- Parameters:
recognizerBundle- New recognition settings that will be applied.
-
requireAutofocusFeature
protected boolean requireAutofocusFeature()
Description copied from class:BaseCameraViewIf autofocus feature is required, please return true from this method. If autofocus feature is not required, return false. If autofocus is required and device does not support autofocus, error will be raised and application will not start. If autofocus is not required, application will work even on devices without autofocus.- Specified by:
requireAutofocusFeaturein classBaseCameraView- Returns:
- True if autofocus is required, otherwise false.
-
onActivityFlip
protected void onActivityFlip()
Description copied from class:BaseCameraViewCalled when activity is flipped - this event is not raised by OS so we have custom detection of that state.- Specified by:
onActivityFlipin classBaseCameraView
-
createCameraListener
@NonNull protected final com.microblink.documentverification.hardware.camera.CameraListener createCameraListener()
Description copied from class:BaseCameraViewABSTRACT METHODS- Specified by:
createCameraListenerin classBaseCameraView
-
createOrientationChangeListener
@NonNull protected final com.microblink.documentverification.hardware.orientation.OrientationChangeListener createOrientationChangeListener()
- Overrides:
createOrientationChangeListenerin classCameraViewGroup
-
setScanningRegion
@UiThread public final void setScanningRegion(@Nullable Rectangle scanningRegion, boolean rotateRegionWithDevice)Define scanning region as a rectangle. Also define whether scanning region will rotate when device orientation changes. first parameter of rectangle is x-coordinate represented as percentage of view width, second parameter is y-coordinate represented as percentage of view height, third parameter is region width represented as percentage of view width and fourth parameter is region height represented as percentage of view height View width and height are defined in current context, i.e. they depend on screen orientation. If you allow your ROI view to be rotated, then in portrait view width will be smaller than height, whilst in landscape orientation width will be larger than height. This complies with view designer preview. If you choose not to rotate your ROI view, then your ROI view will be laid out either in portrait or landscape, depending on setting for your camera activity in AndroidManifest.xml Note that scanning region only reflects to native code - it does not have any impact on user interface. You are required to create a matching user interface that will visualize the same scanning region you set here.- Parameters:
scanningRegion- Rectangle to define a scanning region or null to scan entire image.rotateRegionWithDevice- If set to true, scanning region will be rotate when device changes orientation.
-
changeConfigurationInternal
protected void changeConfigurationInternal(@NonNull android.content.res.Configuration newConfig)- Overrides:
changeConfigurationInternalin classCameraViewGroup
-
shouldRotateScanningRegion
public boolean shouldRotateScanningRegion()
Returns true if scanning region should be rotated with device.- Returns:
- true if scanning region should be rotated with device.
-
getScanningRegion
@Nullable public Rectangle getScanningRegion()
Returns the current scanning region or null if entire image is scanned.- Returns:
- the current scanning region or null if entire image is scanned.
-
getRecognizerBundle
@Nullable @AnyThread public RecognizerBundle getRecognizerBundle()
Returns the currently active recognizer bundle.- Returns:
- the currently active recognizer bundle.
-
setRecognizerBundle
@MainThread public void setRecognizerBundle(@Nullable RecognizerBundle recognizerBundle)Sets the recognizer bundle containing recognizers that will perform the recognition. This method must be called before callingcreate()to have effect.- Parameters:
recognizerBundle- recognizer bundle containing recognizers that will perform the recognition.
-
setScanResultListener
@MainThread public void setScanResultListener(@NonNull ScanResultListener scanResultListener)Sets the listener that will obtain the results of the scanning. If you do not set this listener, scanner will not be able to work. This method must be called before calling create to have effect.- Parameters:
scanResultListener- listener that will obtain result of the scanning
-
setMetadataCallbacks
@AnyThread public void setMetadataCallbacks(@Nullable MetadataCallbacks metadataCallbacks)Sets the metadata callbacks that will obtain metadata during processing.- Parameters:
metadataCallbacks- collection of metadata callbacks tha will obtain metadata during processing. If set to null, all callbacks will be disabled.
-
setFrameRecognitionCallback
@AnyThread public void setFrameRecognitionCallback(@Nullable com.microblink.documentverification.view.recognition.FrameRecognitionCallback frameRecognitionCallback)Sets the frame recognition callback that will be invoked for each camera frame, after the recognition has been completed.- Parameters:
frameRecognitionCallback- callback that will be invoked for each camera frame, after the recognition has been completed.
-
getScanResultListener
@Nullable public ScanResultListener getScanResultListener()
Returns the listener that will obtain the results of the scanning.- Returns:
- the listener that will obtain the results of the scanning.
-
captureHighResImage
@AnyThread public void captureHighResImage(@Nullable com.microblink.documentverification.view.recognition.HighResImageListener highResImageListener)Starts capturing frame at full camera resolution and notifies listener once it's done.- Parameters:
highResImageListener- listener that will be notified when high res frame is available
-
-