CaptureHelper.smali

.class public Lcom/king/zxing/CaptureHelper;
.super Ljava/lang/Object;
.source "CaptureHelper.java"

# interfaces
.implements Lcom/king/zxing/CaptureLifecycle;
.implements Lcom/king/zxing/CaptureTouchEvent;
.implements Lcom/king/zxing/CaptureManager;
.implements Landroid/view/SurfaceHolder$Callback;


# static fields
.field private static final DEVIATION:I


# instance fields
.field private activity:Landroid/app/Activity;

.field private ambientLightManager:Lcom/king/zxing/AmbientLightManager;

.field private beepManager:Lcom/king/zxing/BeepManager;

.field private brightEnoughLux:F

.field private cameraManager:Lcom/king/zxing/camera/CameraManager;

.field private captureHandler:Lcom/king/zxing/CaptureHandler;

.field private characterSet:Ljava/lang/String;

.field private decodeFormats:Ljava/util/Collection;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Collection<",
            "Lcom/google/zxing/BarcodeFormat;",
            ">;"
        }
    .end annotation
.end field

.field private decodeHints:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map<",
            "Lcom/google/zxing/DecodeHintType;",
            "Ljava/lang/Object;",
            ">;"
        }
    .end annotation
.end field

.field private framingRectHorizontalOffset:I

.field private framingRectRatio:F

.field private framingRectVerticalOffset:I

.field private hasCameraFlash:Z

.field private hasSurface:Z

.field private inactivityTimer:Lcom/king/zxing/InactivityTimer;

.field private isAutoRestartPreviewAndDecode:Z

.field private isContinuousScan:Z

.field private isFullScreenScan:Z

.field private isPlayBeep:Z

.field private isReturnBitmap:Z

.field private isSupportAutoZoom:Z

.field private isSupportLuminanceInvert:Z

.field private isSupportVerticalCode:Z

.field private isSupportZoom:Z

.field private isVibrate:Z

.field private ivTorch:Landroid/view/View;

.field private oldDistance:F

.field private onCaptureCallback:Lcom/king/zxing/OnCaptureCallback;

.field private onCaptureListener:Lcom/king/zxing/OnCaptureListener;

.field private surfaceHolder:Landroid/view/SurfaceHolder;

.field private surfaceView:Landroid/view/SurfaceView;

.field private tooDarkLux:F

.field private viewfinderView:Lcom/king/zxing/ViewfinderView;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    const v0, 0x1569

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/king/zxing/CaptureHelper;->DEVIATION:I

    return-void
.end method

.method public constructor <init>(Landroid/app/Activity;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;)V
    .registers 5
    .param p1, "activity"    # Landroid/app/Activity;
    .param p2, "surfaceView"    # Landroid/view/SurfaceView;
    .param p3, "viewfinderView"    # Lcom/king/zxing/ViewfinderView;
    .annotation runtime Ljava/lang/Deprecated;
    .end annotation

    .line 179
    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, p3, v0}, Lcom/king/zxing/CaptureHelper;-><init>(Landroid/app/Activity;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;Landroid/view/View;)V

    .line 180
    return-void
.end method

.method public constructor <init>(Landroid/app/Activity;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;Landroid/view/View;)V
    .registers 7
    .param p1, "activity"    # Landroid/app/Activity;
    .param p2, "surfaceView"    # Landroid/view/SurfaceView;
    .param p3, "viewfinderView"    # Lcom/king/zxing/ViewfinderView;
    .param p4, "ivTorch"    # Landroid/view/View;

    .line 189
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 84
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->isSupportZoom:Z

    .line 90
    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->isSupportAutoZoom:Z

    .line 95
    const/4 v1, 0x0

    iput-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isSupportLuminanceInvert:Z

    .line 100
    iput-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isContinuousScan:Z

    .line 104
    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->isAutoRestartPreviewAndDecode:Z

    .line 132
    const v0, 0x3f666666    # 0.9f

    iput v0, p0, Lcom/king/zxing/CaptureHelper;->framingRectRatio:F

    .line 144
    const/high16 v0, 0x42340000    # 45.0f

    iput v0, p0, Lcom/king/zxing/CaptureHelper;->tooDarkLux:F

    .line 148
    const/high16 v0, 0x42c80000    # 100.0f

    iput v0, p0, Lcom/king/zxing/CaptureHelper;->brightEnoughLux:F

    .line 190
    iput-object p1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    .line 191
    iput-object p2, p0, Lcom/king/zxing/CaptureHelper;->surfaceView:Landroid/view/SurfaceView;

    .line 192
    iput-object p3, p0, Lcom/king/zxing/CaptureHelper;->viewfinderView:Lcom/king/zxing/ViewfinderView;

    .line 193
    iput-object p4, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    .line 194
    return-void
.end method

.method public constructor <init>(Landroidx/fragment/app/Fragment;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;)V
    .registers 5
    .param p1, "fragment"    # Landroidx/fragment/app/Fragment;
    .param p2, "surfaceView"    # Landroid/view/SurfaceView;
    .param p3, "viewfinderView"    # Lcom/king/zxing/ViewfinderView;
    .annotation runtime Ljava/lang/Deprecated;
    .end annotation

    .line 164
    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, p3, v0}, Lcom/king/zxing/CaptureHelper;-><init>(Landroidx/fragment/app/Fragment;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;Landroid/view/View;)V

    .line 165
    return-void
.end method

.method public constructor <init>(Landroidx/fragment/app/Fragment;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;Landroid/view/View;)V
    .registers 6
    .param p1, "fragment"    # Landroidx/fragment/app/Fragment;
    .param p2, "surfaceView"    # Landroid/view/SurfaceView;
    .param p3, "viewfinderView"    # Lcom/king/zxing/ViewfinderView;
    .param p4, "ivTorch"    # Landroid/view/View;

    .line 168
    invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getActivity()Landroidx/fragment/app/FragmentActivity;

    move-result-object v0

    invoke-direct {p0, v0, p2, p3, p4}, Lcom/king/zxing/CaptureHelper;-><init>(Landroid/app/Activity;Landroid/view/SurfaceView;Lcom/king/zxing/ViewfinderView;Landroid/view/View;)V

    .line 169
    return-void
.end method

.method private calcFingerSpacing(Landroid/view/MotionEvent;)F
    .registers 6
    .param p1, "event"    # Landroid/view/MotionEvent;

    .line 447
    const/4 v0, 0x0

    invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getX(I)F

    move-result v1

    const/4 v2, 0x1

    invoke-virtual {p1, v2}, Landroid/view/MotionEvent;->getX(I)F

    move-result v3

    sub-float/2addr v1, v3

    .line 448
    .local v1, "x":F
    invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F

    move-result v0

    invoke-virtual {p1, v2}, Landroid/view/MotionEvent;->getY(I)F

    move-result v2

    sub-float/2addr v0, v2

    .line 449
    .local v0, "y":F
    mul-float v2, v1, v1

    mul-float v3, v0, v0

    add-float/2addr v2, v3

    float-to-double v2, v2

    invoke-static {v2, v3}, Ljava/lang/Math;->sqrt(D)D

    move-result-wide v2

    double-to-float v2, v2

    return v2
.end method

.method private calcTapArea(FFFLandroid/hardware/Camera$Size;)Landroid/graphics/Rect;
    .registers 19
    .param p1, "x"    # F
    .param p2, "y"    # F
    .param p3, "coefficient"    # F
    .param p4, "previewSize"    # Landroid/hardware/Camera$Size;

    .line 461
    move-object v0, p0

    move-object/from16 v1, p4

    const/high16 v2, 0x43480000    # 200.0f

    .line 462
    .local v2, "focusAreaSize":F
    mul-float v3, v2, p3

    invoke-static {v3}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/Float;->intValue()I

    move-result v3

    .line 463
    .local v3, "areaSize":I
    iget v4, v1, Landroid/hardware/Camera$Size;->width:I

    int-to-float v4, v4

    div-float v4, p1, v4

    const/high16 v5, 0x44fa0000    # 2000.0f

    mul-float v4, v4, v5

    const/high16 v6, 0x447a0000    # 1000.0f

    sub-float/2addr v4, v6

    float-to-int v4, v4

    .line 464
    .local v4, "centerX":I
    iget v7, v1, Landroid/hardware/Camera$Size;->height:I

    int-to-float v7, v7

    div-float v7, p2, v7

    mul-float v7, v7, v5

    sub-float/2addr v7, v6

    float-to-int v5, v7

    .line 465
    .local v5, "centerY":I
    div-int/lit8 v6, v3, 0x2

    sub-int v6, v4, v6

    const/16 v7, 0x3e8

    const/16 v8, -0x3e8

    invoke-direct {p0, v6, v8, v7}, Lcom/king/zxing/CaptureHelper;->clamp(III)I

    move-result v6

    .line 466
    .local v6, "left":I
    div-int/lit8 v9, v3, 0x2

    sub-int v9, v5, v9

    invoke-direct {p0, v9, v8, v7}, Lcom/king/zxing/CaptureHelper;->clamp(III)I

    move-result v7

    .line 467
    .local v7, "top":I
    new-instance v8, Landroid/graphics/RectF;

    int-to-float v9, v6

    int-to-float v10, v7

    add-int v11, v6, v3

    int-to-float v11, v11

    add-int v12, v7, v3

    int-to-float v12, v12

    invoke-direct {v8, v9, v10, v11, v12}, Landroid/graphics/RectF;-><init>(FFFF)V

    .line 468
    .local v8, "rectF":Landroid/graphics/RectF;
    new-instance v9, Landroid/graphics/Rect;

    iget v10, v8, Landroid/graphics/RectF;->left:F

    invoke-static {v10}, Ljava/lang/Math;->round(F)I

    move-result v10

    iget v11, v8, Landroid/graphics/RectF;->top:F

    invoke-static {v11}, Ljava/lang/Math;->round(F)I

    move-result v11

    iget v12, v8, Landroid/graphics/RectF;->right:F

    .line 469
    invoke-static {v12}, Ljava/lang/Math;->round(F)I

    move-result v12

    iget v13, v8, Landroid/graphics/RectF;->bottom:F

    invoke-static {v13}, Ljava/lang/Math;->round(F)I

    move-result v13

    invoke-direct {v9, v10, v11, v12, v13}, Landroid/graphics/Rect;-><init>(IIII)V

    .line 468
    return-object v9
.end method

.method private clamp(III)I
    .registers 4
    .param p1, "x"    # I
    .param p2, "min"    # I
    .param p3, "max"    # I

    .line 480
    if-le p1, p3, :cond_3

    .line 481
    return p3

    .line 483
    :cond_3
    if-ge p1, p2, :cond_6

    .line 484
    return p2

    .line 486
    :cond_6
    return p1
.end method

.method private focusOnTouch(Landroid/view/MotionEvent;Landroid/hardware/Camera;)V
    .registers 11
    .param p1, "event"    # Landroid/view/MotionEvent;
    .param p2, "camera"    # Landroid/hardware/Camera;
    .annotation runtime Ljava/lang/Deprecated;
    .end annotation

    .line 411
    invoke-virtual {p2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;

    move-result-object v0

    .line 412
    .local v0, "params":Landroid/hardware/Camera$Parameters;
    invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getPreviewSize()Landroid/hardware/Camera$Size;

    move-result-object v1

    .line 414
    .local v1, "previewSize":Landroid/hardware/Camera$Size;
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawX()F

    move-result v2

    invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawY()F

    move-result v3

    const/high16 v4, 0x3f800000    # 1.0f

    invoke-direct {p0, v2, v3, v4, v1}, Lcom/king/zxing/CaptureHelper;->calcTapArea(FFFLandroid/hardware/Camera$Size;)Landroid/graphics/Rect;

    move-result-object v2

    .line 415
    .local v2, "focusRect":Landroid/graphics/Rect;
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawX()F

    move-result v3

    invoke-virtual {p1}, Landroid/view/MotionEvent;->getRawY()F

    move-result v4

    const/high16 v5, 0x3fc00000    # 1.5f

    invoke-direct {p0, v3, v4, v5, v1}, Lcom/king/zxing/CaptureHelper;->calcTapArea(FFFLandroid/hardware/Camera$Size;)Landroid/graphics/Rect;

    move-result-object v3

    .line 416
    .local v3, "meteringRect":Landroid/graphics/Rect;
    invoke-virtual {p2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;

    move-result-object v4

    .line 417
    .local v4, "parameters":Landroid/hardware/Camera$Parameters;
    invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getMaxNumFocusAreas()I

    move-result v5

    const/16 v6, 0x258

    if-lez v5, :cond_40

    .line 418
    new-instance v5, Ljava/util/ArrayList;

    invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V

    .line 419
    .local v5, "focusAreas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
    new-instance v7, Landroid/hardware/Camera$Area;

    invoke-direct {v7, v2, v6}, Landroid/hardware/Camera$Area;-><init>(Landroid/graphics/Rect;I)V

    invoke-interface {v5, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 420
    invoke-virtual {v4, v5}, Landroid/hardware/Camera$Parameters;->setFocusAreas(Ljava/util/List;)V

    .line 423
    .end local v5    # "focusAreas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
    :cond_40
    invoke-virtual {v4}, Landroid/hardware/Camera$Parameters;->getMaxNumMeteringAreas()I

    move-result v5

    if-lez v5, :cond_56

    .line 424
    new-instance v5, Ljava/util/ArrayList;

    invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V

    .line 425
    .local v5, "meteringAreas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
    new-instance v7, Landroid/hardware/Camera$Area;

    invoke-direct {v7, v3, v6}, Landroid/hardware/Camera$Area;-><init>(Landroid/graphics/Rect;I)V

    invoke-interface {v5, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 426
    invoke-virtual {v4, v5}, Landroid/hardware/Camera$Parameters;->setMeteringAreas(Ljava/util/List;)V

    .line 428
    .end local v5    # "meteringAreas":Ljava/util/List;, "Ljava/util/List<Landroid/hardware/Camera$Area;>;"
    :cond_56
    invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getFocusMode()Ljava/lang/String;

    move-result-object v5

    .line 429
    .local v5, "currentFocusMode":Ljava/lang/String;
    const-string v6, "macro"

    invoke-virtual {v0, v6}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V

    .line 430
    invoke-virtual {p2, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V

    .line 432
    new-instance v6, Lcom/king/zxing/-$$Lambda$CaptureHelper$ylDXELNLTSPjWjiWiDjfyhgXJhc;

    invoke-direct {v6, v5}, Lcom/king/zxing/-$$Lambda$CaptureHelper$ylDXELNLTSPjWjiWiDjfyhgXJhc;-><init>(Ljava/lang/String;)V

    invoke-virtual {p2, v6}, Landroid/hardware/Camera;->autoFocus(Landroid/hardware/Camera$AutoFocusCallback;)V

    .line 438
    return-void
.end method

.method private handleZoom(ZLandroid/hardware/Camera;)V
    .registers 6
    .param p1, "isZoomIn"    # Z
    .param p2, "camera"    # Landroid/hardware/Camera;

    .line 387
    invoke-virtual {p2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;

    move-result-object v0

    .line 388
    .local v0, "params":Landroid/hardware/Camera$Parameters;
    invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->isZoomSupported()Z

    move-result v1

    if-eqz v1, :cond_24

    .line 389
    invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getMaxZoom()I

    move-result v1

    .line 390
    .local v1, "maxZoom":I
    invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->getZoom()I

    move-result v2

    .line 391
    .local v2, "zoom":I
    if-eqz p1, :cond_19

    if-ge v2, v1, :cond_19

    .line 392
    add-int/lit8 v2, v2, 0x1

    goto :goto_1d

    .line 393
    :cond_19
    if-lez v2, :cond_1d

    .line 394
    add-int/lit8 v2, v2, -0x1

    .line 396
    :cond_1d
    :goto_1d
    invoke-virtual {v0, v2}, Landroid/hardware/Camera$Parameters;->setZoom(I)V

    .line 397
    invoke-virtual {p2, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V

    .line 398
    .end local v1    # "maxZoom":I
    .end local v2    # "zoom":I
    goto :goto_2a

    .line 399
    :cond_24
    const-string/jumbo v1, "zoom not supported"

    invoke-static {v1}, Lcom/king/zxing/util/LogUtils;->i(Ljava/lang/String;)V

    .line 401
    :goto_2a
    return-void
.end method

.method private initCamera(Landroid/view/SurfaceHolder;)V
    .registers 11
    .param p1, "surfaceHolder"    # Landroid/view/SurfaceHolder;

    .line 334
    if-eqz p1, :cond_57

    .line 337
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0}, Lcom/king/zxing/camera/CameraManager;->isOpen()Z

    move-result v0

    if-eqz v0, :cond_10

    .line 338
    const-string v0, "initCamera() while already open -- late SurfaceView callback?"

    invoke-static {v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;)V

    .line 339
    return-void

    .line 342
    :cond_10
    :try_start_10
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0, p1}, Lcom/king/zxing/camera/CameraManager;->openDriver(Landroid/view/SurfaceHolder;)V

    .line 344
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-nez v0, :cond_55

    .line 345
    new-instance v0, Lcom/king/zxing/CaptureHandler;

    iget-object v2, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    iget-object v3, p0, Lcom/king/zxing/CaptureHelper;->viewfinderView:Lcom/king/zxing/ViewfinderView;

    iget-object v4, p0, Lcom/king/zxing/CaptureHelper;->onCaptureListener:Lcom/king/zxing/OnCaptureListener;

    iget-object v5, p0, Lcom/king/zxing/CaptureHelper;->decodeFormats:Ljava/util/Collection;

    iget-object v6, p0, Lcom/king/zxing/CaptureHelper;->decodeHints:Ljava/util/Map;

    iget-object v7, p0, Lcom/king/zxing/CaptureHelper;->characterSet:Ljava/lang/String;

    iget-object v8, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    move-object v1, v0

    invoke-direct/range {v1 .. v8}, Lcom/king/zxing/CaptureHandler;-><init>(Landroid/app/Activity;Lcom/king/zxing/ViewfinderView;Lcom/king/zxing/OnCaptureListener;Ljava/util/Collection;Ljava/util/Map;Ljava/lang/String;Lcom/king/zxing/camera/CameraManager;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    .line 346
    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isSupportVerticalCode:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/CaptureHandler;->setSupportVerticalCode(Z)V

    .line 347
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isReturnBitmap:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/CaptureHandler;->setReturnBitmap(Z)V

    .line 348
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isSupportAutoZoom:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/CaptureHandler;->setSupportAutoZoom(Z)V

    .line 349
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isSupportLuminanceInvert:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/CaptureHandler;->setSupportLuminanceInvert(Z)V
    :try_end_49
    .catch Ljava/io/IOException; {:try_start_10 .. :try_end_49} :catch_51
    .catch Ljava/lang/RuntimeException; {:try_start_10 .. :try_end_49} :catch_4a

    goto :goto_55

    .line 353
    :catch_4a
    move-exception v0

    .line 356
    .local v0, "e":Ljava/lang/RuntimeException;
    const-string v1, "Unexpected error initializing camera"

    invoke-static {v1, v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_56

    .line 351
    .end local v0    # "e":Ljava/lang/RuntimeException;
    :catch_51
    move-exception v0

    .line 352
    .local v0, "ioe":Ljava/io/IOException;
    invoke-static {v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/Throwable;)V

    .line 357
    .end local v0    # "ioe":Ljava/io/IOException;
    :cond_55
    :goto_55
    nop

    .line 358
    :goto_56
    return-void

    .line 335
    :cond_57
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "No SurfaceHolder provided"

    invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method private initCameraManager()V
    .registers 3

    .line 301
    new-instance v0, Lcom/king/zxing/camera/CameraManager;

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-direct {v0, v1}, Lcom/king/zxing/camera/CameraManager;-><init>(Landroid/content/Context;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    .line 302
    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isFullScreenScan:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setFullScreenScan(Z)V

    .line 303
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    iget v1, p0, Lcom/king/zxing/CaptureHelper;->framingRectRatio:F

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectRatio(F)V

    .line 304
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    iget v1, p0, Lcom/king/zxing/CaptureHelper;->framingRectVerticalOffset:I

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectVerticalOffset(I)V

    .line 305
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    iget v1, p0, Lcom/king/zxing/CaptureHelper;->framingRectHorizontalOffset:I

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectHorizontalOffset(I)V

    .line 306
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    if-eqz v0, :cond_47

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->hasCameraFlash:Z

    if-eqz v1, :cond_47

    .line 307
    new-instance v1, Lcom/king/zxing/-$$Lambda$CaptureHelper$i8cvNEWL6OlZjVbzRDtr3lazGZc;

    invoke-direct {v1, p0}, Lcom/king/zxing/-$$Lambda$CaptureHelper$i8cvNEWL6OlZjVbzRDtr3lazGZc;-><init>(Lcom/king/zxing/CaptureHelper;)V

    invoke-virtual {v0, v1}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    .line 312
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    new-instance v1, Lcom/king/zxing/-$$Lambda$CaptureHelper$qZVOqVqKk6calUaIsNPo5S2Svww;

    invoke-direct {v1, p0}, Lcom/king/zxing/-$$Lambda$CaptureHelper$qZVOqVqKk6calUaIsNPo5S2Svww;-><init>(Lcom/king/zxing/CaptureHelper;)V

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setOnSensorListener(Lcom/king/zxing/camera/CameraManager$OnSensorListener;)V

    .line 323
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    new-instance v1, Lcom/king/zxing/-$$Lambda$CaptureHelper$rpoAt43hjil8ox87CgThrHqtLBQ;

    invoke-direct {v1, p0}, Lcom/king/zxing/-$$Lambda$CaptureHelper$rpoAt43hjil8ox87CgThrHqtLBQ;-><init>(Lcom/king/zxing/CaptureHelper;)V

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setOnTorchListener(Lcom/king/zxing/camera/CameraManager$OnTorchListener;)V

    .line 326
    :cond_47
    return-void
.end method

.method static synthetic lambda$focusOnTouch$4(Ljava/lang/String;ZLandroid/hardware/Camera;)V
    .registers 4
    .param p0, "currentFocusMode"    # Ljava/lang/String;
    .param p1, "success"    # Z
    .param p2, "camera1"    # Landroid/hardware/Camera;

    .line 433
    invoke-virtual {p2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;

    move-result-object v0

    .line 434
    .local v0, "params1":Landroid/hardware/Camera$Parameters;
    invoke-virtual {v0, p0}, Landroid/hardware/Camera$Parameters;->setFocusMode(Ljava/lang/String;)V

    .line 435
    invoke-virtual {p2, v0}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V

    .line 436
    return-void
.end method


# virtual methods
.method public autoRestartPreviewAndDecode(Z)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .param p1, "isAutoRestartPreviewAndDecode"    # Z

    .line 568
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isAutoRestartPreviewAndDecode:Z

    .line 569
    return-object p0
.end method

.method public brightEnoughLux(F)Lcom/king/zxing/CaptureHelper;
    .registers 4
    .param p1, "brightEnoughLux"    # F

    .line 701
    iput p1, p0, Lcom/king/zxing/CaptureHelper;->brightEnoughLux:F

    .line 702
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    if-eqz v0, :cond_b

    .line 703
    iget v1, p0, Lcom/king/zxing/CaptureHelper;->tooDarkLux:F

    invoke-virtual {v0, v1}, Lcom/king/zxing/AmbientLightManager;->setTooDarkLux(F)V

    .line 705
    :cond_b
    return-object p0
.end method

.method public characterSet(Ljava/lang/String;)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .param p1, "characterSet"    # Ljava/lang/String;

    .line 648
    iput-object p1, p0, Lcom/king/zxing/CaptureHelper;->characterSet:Ljava/lang/String;

    .line 649
    return-object p0
.end method

.method public continuousScan(Z)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .param p1, "isContinuousScan"    # Z

    .line 558
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isContinuousScan:Z

    .line 559
    return-object p0
.end method

.method public decodeFormats(Ljava/util/Collection;)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Collection<",
            "Lcom/google/zxing/BarcodeFormat;",
            ">;)",
            "Lcom/king/zxing/CaptureHelper;"
        }
    .end annotation

    .line 614
    .local p1, "decodeFormats":Ljava/util/Collection;, "Ljava/util/Collection<Lcom/google/zxing/BarcodeFormat;>;"
    iput-object p1, p0, Lcom/king/zxing/CaptureHelper;->decodeFormats:Ljava/util/Collection;

    .line 615
    return-object p0
.end method

.method public decodeHint(Lcom/google/zxing/DecodeHintType;Ljava/lang/Object;)Lcom/king/zxing/CaptureHelper;
    .registers 5
    .param p1, "key"    # Lcom/google/zxing/DecodeHintType;
    .param p2, "value"    # Ljava/lang/Object;

    .line 635
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->decodeHints:Ljava/util/Map;

    if-nez v0, :cond_d

    .line 636
    new-instance v0, Ljava/util/EnumMap;

    const-class v1, Lcom/google/zxing/DecodeHintType;

    invoke-direct {v0, v1}, Ljava/util/EnumMap;-><init>(Ljava/lang/Class;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->decodeHints:Ljava/util/Map;

    .line 638
    :cond_d
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->decodeHints:Ljava/util/Map;

    invoke-interface {v0, p1, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 639
    return-object p0
.end method

.method public decodeHints(Ljava/util/Map;)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Map<",
            "Lcom/google/zxing/DecodeHintType;",
            "Ljava/lang/Object;",
            ">;)",
            "Lcom/king/zxing/CaptureHelper;"
        }
    .end annotation

    .line 624
    .local p1, "decodeHints":Ljava/util/Map;, "Ljava/util/Map<Lcom/google/zxing/DecodeHintType;Ljava/lang/Object;>;"
    iput-object p1, p0, Lcom/king/zxing/CaptureHelper;->decodeHints:Ljava/util/Map;

    .line 625
    return-object p0
.end method

.method public framingRectHorizontalOffset(I)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "framingRectHorizontalOffset"    # I

    .line 794
    iput p1, p0, Lcom/king/zxing/CaptureHelper;->framingRectHorizontalOffset:I

    .line 795
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    if-eqz v0, :cond_9

    .line 796
    invoke-virtual {v0, p1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectHorizontalOffset(I)V

    .line 798
    :cond_9
    return-object p0
.end method

.method public framingRectRatio(F)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "framingRectRatio"    # F

    .line 768
    iput p1, p0, Lcom/king/zxing/CaptureHelper;->framingRectRatio:F

    .line 769
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    if-eqz v0, :cond_9

    .line 770
    invoke-virtual {v0, p1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectRatio(F)V

    .line 772
    :cond_9
    return-object p0
.end method

.method public framingRectVerticalOffset(I)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "framingRectVerticalOffset"    # I

    .line 781
    iput p1, p0, Lcom/king/zxing/CaptureHelper;->framingRectVerticalOffset:I

    .line 782
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    if-eqz v0, :cond_9

    .line 783
    invoke-virtual {v0, p1}, Lcom/king/zxing/camera/CameraManager;->setFramingRectVerticalOffset(I)V

    .line 785
    :cond_9
    return-object p0
.end method

.method public frontLightMode(Lcom/king/zxing/camera/FrontLightMode;)Lcom/king/zxing/CaptureHelper;
    .registers 4
    .param p1, "mode"    # Lcom/king/zxing/camera/FrontLightMode;

    .line 675
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-static {v0, p1}, Lcom/king/zxing/camera/FrontLightMode;->put(Landroid/content/Context;Lcom/king/zxing/camera/FrontLightMode;)V

    .line 676
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    if-eqz v0, :cond_13

    sget-object v0, Lcom/king/zxing/camera/FrontLightMode;->AUTO:Lcom/king/zxing/camera/FrontLightMode;

    if-eq p1, v0, :cond_13

    .line 677
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    const/4 v1, 0x4

    invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 679
    :cond_13
    return-object p0
.end method

.method public fullScreenScan(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "fullScreenScan"    # Z

    .line 754
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isFullScreenScan:Z

    .line 755
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    if-eqz v0, :cond_9

    .line 756
    invoke-virtual {v0, p1}, Lcom/king/zxing/camera/CameraManager;->setFullScreenScan(Z)V

    .line 758
    :cond_9
    return-object p0
.end method

.method public getAmbientLightManager()Lcom/king/zxing/AmbientLightManager;
    .registers 2

    .line 836
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    return-object v0
.end method

.method public getBeepManager()Lcom/king/zxing/BeepManager;
    .registers 2

    .line 827
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    return-object v0
.end method

.method public getCameraManager()Lcom/king/zxing/camera/CameraManager;
    .registers 2

    .line 818
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    return-object v0
.end method

.method public getInactivityTimer()Lcom/king/zxing/InactivityTimer;
    .registers 2

    .line 845
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    return-object v0
.end method

.method public synthetic lambda$initCameraManager$1$CaptureHelper(Landroid/view/View;)V
    .registers 4
    .param p1, "v"    # Landroid/view/View;

    .line 308
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    if-eqz v0, :cond_f

    .line 309
    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    invoke-virtual {v1}, Landroid/view/View;->isSelected()Z

    move-result v1

    xor-int/lit8 v1, v1, 0x1

    invoke-virtual {v0, v1}, Lcom/king/zxing/camera/CameraManager;->setTorch(Z)V

    .line 311
    :cond_f
    return-void
.end method

.method public synthetic lambda$initCameraManager$2$CaptureHelper(ZZF)V
    .registers 6
    .param p1, "torch"    # Z
    .param p2, "tooDark"    # Z
    .param p3, "ambientLightLux"    # F

    .line 313
    if-eqz p2, :cond_11

    .line 314
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    invoke-virtual {v0}, Landroid/view/View;->getVisibility()I

    move-result v0

    if-eqz v0, :cond_21

    .line 315
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    const/4 v1, 0x0

    invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V

    goto :goto_21

    .line 317
    :cond_11
    if-nez p1, :cond_21

    .line 318
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    invoke-virtual {v0}, Landroid/view/View;->getVisibility()I

    move-result v0

    if-nez v0, :cond_21

    .line 319
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    const/4 v1, 0x4

    invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 322
    :cond_21
    :goto_21
    return-void
.end method

.method public synthetic lambda$initCameraManager$3$CaptureHelper(Z)V
    .registers 3
    .param p1, "torch"    # Z

    .line 323
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    invoke-virtual {v0, p1}, Landroid/view/View;->setSelected(Z)V

    return-void
.end method

.method public synthetic lambda$onCreate$0$CaptureHelper(Lcom/google/zxing/Result;Landroid/graphics/Bitmap;F)V
    .registers 5
    .param p1, "result"    # Lcom/google/zxing/Result;
    .param p2, "barcode"    # Landroid/graphics/Bitmap;
    .param p3, "scaleFactor"    # F

    .line 209
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    invoke-virtual {v0}, Lcom/king/zxing/InactivityTimer;->onActivity()V

    .line 210
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    invoke-virtual {v0}, Lcom/king/zxing/BeepManager;->playBeepSoundAndVibrate()V

    .line 211
    invoke-virtual {p0, p1, p2, p3}, Lcom/king/zxing/CaptureHelper;->onResult(Lcom/google/zxing/Result;Landroid/graphics/Bitmap;F)V

    .line 212
    return-void
.end method

.method public synthetic lambda$onResult$5$CaptureHelper(Ljava/lang/String;)V
    .registers 5
    .param p1, "text"    # Ljava/lang/String;

    .line 531
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->onCaptureCallback:Lcom/king/zxing/OnCaptureCallback;

    if-eqz v0, :cond_b

    invoke-interface {v0, p1}, Lcom/king/zxing/OnCaptureCallback;->onResultCallback(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_b

    .line 532
    return-void

    .line 534
    :cond_b
    new-instance v0, Landroid/content/Intent;

    invoke-direct {v0}, Landroid/content/Intent;-><init>()V

    .line 535
    .local v0, "intent":Landroid/content/Intent;
    const-string v1, "SCAN_RESULT"

    invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 536
    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    const/4 v2, -0x1

    invoke-virtual {v1, v2, v0}, Landroid/app/Activity;->setResult(ILandroid/content/Intent;)V

    .line 537
    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-virtual {v1}, Landroid/app/Activity;->finish()V

    .line 538
    return-void
.end method

.method public onCreate()V
    .registers 3

    .line 199
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->surfaceView:Landroid/view/SurfaceView;

    invoke-virtual {v0}, Landroid/view/SurfaceView;->getHolder()Landroid/view/SurfaceHolder;

    move-result-object v0

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->surfaceHolder:Landroid/view/SurfaceHolder;

    .line 200
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    .line 201
    new-instance v0, Lcom/king/zxing/InactivityTimer;

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-direct {v0, v1}, Lcom/king/zxing/InactivityTimer;-><init>(Landroid/app/Activity;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    .line 202
    new-instance v0, Lcom/king/zxing/BeepManager;

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-direct {v0, v1}, Lcom/king/zxing/BeepManager;-><init>(Landroid/app/Activity;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    .line 203
    new-instance v0, Lcom/king/zxing/AmbientLightManager;

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-direct {v0, v1}, Lcom/king/zxing/AmbientLightManager;-><init>(Landroid/content/Context;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    .line 205
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-virtual {v0}, Landroid/app/Activity;->getPackageManager()Landroid/content/pm/PackageManager;

    move-result-object v0

    const-string v1, "android.hardware.camera.flash"

    invoke-virtual {v0, v1}, Landroid/content/pm/PackageManager;->hasSystemFeature(Ljava/lang/String;)Z

    move-result v0

    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasCameraFlash:Z

    .line 206
    invoke-direct {p0}, Lcom/king/zxing/CaptureHelper;->initCameraManager()V

    .line 208
    new-instance v0, Lcom/king/zxing/-$$Lambda$CaptureHelper$M1LKX0hZL5VGLrV8hfodXcHppF8;

    invoke-direct {v0, p0}, Lcom/king/zxing/-$$Lambda$CaptureHelper$M1LKX0hZL5VGLrV8hfodXcHppF8;-><init>(Lcom/king/zxing/CaptureHelper;)V

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->onCaptureListener:Lcom/king/zxing/OnCaptureListener;

    .line 214
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isPlayBeep:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/BeepManager;->setPlayBeep(Z)V

    .line 215
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isVibrate:Z

    invoke-virtual {v0, v1}, Lcom/king/zxing/BeepManager;->setVibrate(Z)V

    .line 218
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    iget v1, p0, Lcom/king/zxing/CaptureHelper;->tooDarkLux:F

    invoke-virtual {v0, v1}, Lcom/king/zxing/AmbientLightManager;->setTooDarkLux(F)V

    .line 219
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    iget v1, p0, Lcom/king/zxing/CaptureHelper;->brightEnoughLux:F

    invoke-virtual {v0, v1}, Lcom/king/zxing/AmbientLightManager;->setBrightEnoughLux(F)V

    .line 221
    return-void
.end method

.method public onDestroy()V
    .registers 2

    .line 262
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    invoke-virtual {v0}, Lcom/king/zxing/InactivityTimer;->shutdown()V

    .line 263
    return-void
.end method

.method public onPause()V
    .registers 3

    .line 242
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_a

    .line 243
    invoke-virtual {v0}, Lcom/king/zxing/CaptureHandler;->quitSynchronously()V

    .line 244
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    .line 246
    :cond_a
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    invoke-virtual {v0}, Lcom/king/zxing/InactivityTimer;->onPause()V

    .line 247
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    invoke-virtual {v0}, Lcom/king/zxing/AmbientLightManager;->stop()V

    .line 248
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    invoke-virtual {v0}, Lcom/king/zxing/BeepManager;->close()V

    .line 249
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0}, Lcom/king/zxing/camera/CameraManager;->closeDriver()V

    .line 250
    iget-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    if-nez v0, :cond_27

    .line 251
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->surfaceHolder:Landroid/view/SurfaceHolder;

    invoke-interface {v0, p0}, Landroid/view/SurfaceHolder;->removeCallback(Landroid/view/SurfaceHolder$Callback;)V

    .line 253
    :cond_27
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    if-eqz v0, :cond_3d

    invoke-virtual {v0}, Landroid/view/View;->getVisibility()I

    move-result v0

    if-nez v0, :cond_3d

    .line 254
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    const/4 v1, 0x0

    invoke-virtual {v0, v1}, Landroid/view/View;->setSelected(Z)V

    .line 255
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ivTorch:Landroid/view/View;

    const/4 v1, 0x4

    invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 257
    :cond_3d
    return-void
.end method

.method public onResult(Lcom/google/zxing/Result;)V
    .registers 7
    .param p1, "result"    # Lcom/google/zxing/Result;

    .line 517
    invoke-virtual {p1}, Lcom/google/zxing/Result;->getText()Ljava/lang/String;

    move-result-object v0

    .line 518
    .local v0, "text":Ljava/lang/String;
    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isContinuousScan:Z

    if-eqz v1, :cond_17

    .line 519
    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->onCaptureCallback:Lcom/king/zxing/OnCaptureCallback;

    if-eqz v1, :cond_f

    .line 520
    invoke-interface {v1, v0}, Lcom/king/zxing/OnCaptureCallback;->onResultCallback(Ljava/lang/String;)Z

    .line 522
    :cond_f
    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isAutoRestartPreviewAndDecode:Z

    if-eqz v1, :cond_16

    .line 523
    invoke-virtual {p0}, Lcom/king/zxing/CaptureHelper;->restartPreviewAndDecode()V

    .line 525
    :cond_16
    return-void

    .line 528
    :cond_17
    iget-boolean v1, p0, Lcom/king/zxing/CaptureHelper;->isPlayBeep:Z

    if-eqz v1, :cond_2a

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v1, :cond_2a

    .line 529
    new-instance v2, Lcom/king/zxing/-$$Lambda$CaptureHelper$qeCs8VHWSPAGjlauoPkYu9qs5NM;

    invoke-direct {v2, p0, v0}, Lcom/king/zxing/-$$Lambda$CaptureHelper$qeCs8VHWSPAGjlauoPkYu9qs5NM;-><init>(Lcom/king/zxing/CaptureHelper;Ljava/lang/String;)V

    const-wide/16 v3, 0x64

    invoke-virtual {v1, v2, v3, v4}, Lcom/king/zxing/CaptureHandler;->postDelayed(Ljava/lang/Runnable;J)Z

    .line 540
    return-void

    .line 544
    :cond_2a
    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->onCaptureCallback:Lcom/king/zxing/OnCaptureCallback;

    if-eqz v1, :cond_35

    invoke-interface {v1, v0}, Lcom/king/zxing/OnCaptureCallback;->onResultCallback(Ljava/lang/String;)Z

    move-result v1

    if-eqz v1, :cond_35

    .line 545
    return-void

    .line 547
    :cond_35
    new-instance v1, Landroid/content/Intent;

    invoke-direct {v1}, Landroid/content/Intent;-><init>()V

    .line 548
    .local v1, "intent":Landroid/content/Intent;
    const-string v2, "SCAN_RESULT"

    invoke-virtual {v1, v2, v0}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 549
    iget-object v2, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    const/4 v3, -0x1

    invoke-virtual {v2, v3, v1}, Landroid/app/Activity;->setResult(ILandroid/content/Intent;)V

    .line 550
    iget-object v2, p0, Lcom/king/zxing/CaptureHelper;->activity:Landroid/app/Activity;

    invoke-virtual {v2}, Landroid/app/Activity;->finish()V

    .line 551
    return-void
.end method

.method public onResult(Lcom/google/zxing/Result;Landroid/graphics/Bitmap;F)V
    .registers 4
    .param p1, "result"    # Lcom/google/zxing/Result;
    .param p2, "barcode"    # Landroid/graphics/Bitmap;
    .param p3, "scaleFactor"    # F

    .line 506
    invoke-virtual {p0, p1}, Lcom/king/zxing/CaptureHelper;->onResult(Lcom/google/zxing/Result;)V

    .line 507
    return-void
.end method

.method public onResume()V
    .registers 3

    .line 227
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    invoke-virtual {v0}, Lcom/king/zxing/BeepManager;->updatePrefs()V

    .line 229
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->inactivityTimer:Lcom/king/zxing/InactivityTimer;

    invoke-virtual {v0}, Lcom/king/zxing/InactivityTimer;->onResume()V

    .line 231
    iget-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    if-eqz v0, :cond_14

    .line 232
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->surfaceHolder:Landroid/view/SurfaceHolder;

    invoke-direct {p0, v0}, Lcom/king/zxing/CaptureHelper;->initCamera(Landroid/view/SurfaceHolder;)V

    goto :goto_19

    .line 234
    :cond_14
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->surfaceHolder:Landroid/view/SurfaceHolder;

    invoke-interface {v0, p0}, Landroid/view/SurfaceHolder;->addCallback(Landroid/view/SurfaceHolder$Callback;)V

    .line 236
    :goto_19
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    iget-object v1, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0, v1}, Lcom/king/zxing/AmbientLightManager;->start(Lcom/king/zxing/camera/CameraManager;)V

    .line 237
    return-void
.end method

.method public onTouchEvent(Landroid/view/MotionEvent;)Z
    .registers 9
    .param p1, "event"    # Landroid/view/MotionEvent;

    .line 271
    iget-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->isSupportZoom:Z

    const/4 v1, 0x0

    if-eqz v0, :cond_52

    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0}, Lcom/king/zxing/camera/CameraManager;->isOpen()Z

    move-result v0

    if-eqz v0, :cond_52

    .line 272
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->cameraManager:Lcom/king/zxing/camera/CameraManager;

    invoke-virtual {v0}, Lcom/king/zxing/camera/CameraManager;->getOpenCamera()Lcom/king/zxing/camera/open/OpenCamera;

    move-result-object v0

    invoke-virtual {v0}, Lcom/king/zxing/camera/open/OpenCamera;->getCamera()Landroid/hardware/Camera;

    move-result-object v0

    .line 273
    .local v0, "camera":Landroid/hardware/Camera;
    if-nez v0, :cond_1a

    .line 274
    return v1

    .line 276
    :cond_1a
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getPointerCount()I

    move-result v2

    const/4 v3, 0x1

    if-le v2, v3, :cond_52

    .line 277
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I

    move-result v2

    and-int/lit16 v2, v2, 0xff

    const/4 v4, 0x2

    if-eq v2, v4, :cond_35

    const/4 v1, 0x5

    if-eq v2, v1, :cond_2e

    goto :goto_51

    .line 279
    :cond_2e
    invoke-direct {p0, p1}, Lcom/king/zxing/CaptureHelper;->calcFingerSpacing(Landroid/view/MotionEvent;)F

    move-result v1

    iput v1, p0, Lcom/king/zxing/CaptureHelper;->oldDistance:F

    .line 280
    goto :goto_51

    .line 282
    :cond_35
    invoke-direct {p0, p1}, Lcom/king/zxing/CaptureHelper;->calcFingerSpacing(Landroid/view/MotionEvent;)F

    move-result v2

    .line 284
    .local v2, "newDistance":F
    iget v4, p0, Lcom/king/zxing/CaptureHelper;->oldDistance:F

    const/high16 v5, 0x40c00000    # 6.0f

    add-float v6, v4, v5

    cmpl-float v6, v2, v6

    if-lez v6, :cond_47

    .line 285
    invoke-direct {p0, v3, v0}, Lcom/king/zxing/CaptureHelper;->handleZoom(ZLandroid/hardware/Camera;)V

    goto :goto_4f

    .line 286
    :cond_47
    sub-float/2addr v4, v5

    cmpg-float v4, v2, v4

    if-gez v4, :cond_4f

    .line 287
    invoke-direct {p0, v1, v0}, Lcom/king/zxing/CaptureHelper;->handleZoom(ZLandroid/hardware/Camera;)V

    .line 289
    :cond_4f
    :goto_4f
    iput v2, p0, Lcom/king/zxing/CaptureHelper;->oldDistance:F

    .line 293
    .end local v2    # "newDistance":F
    :goto_51
    return v3

    .line 297
    .end local v0    # "camera":Landroid/hardware/Camera;
    :cond_52
    return v1
.end method

.method public playBeep(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "playBeep"    # Z

    .line 578
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isPlayBeep:Z

    .line 579
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    if-eqz v0, :cond_9

    .line 580
    invoke-virtual {v0, p1}, Lcom/king/zxing/BeepManager;->setPlayBeep(Z)V

    .line 582
    :cond_9
    return-object p0
.end method

.method public restartPreviewAndDecode()V
    .registers 2

    .line 494
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_7

    .line 495
    invoke-virtual {v0}, Lcom/king/zxing/CaptureHandler;->restartPreviewAndDecode()V

    .line 497
    :cond_7
    return-void
.end method

.method public returnBitmap(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "returnBitmap"    # Z

    .line 714
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isReturnBitmap:Z

    .line 715
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_9

    .line 716
    invoke-virtual {v0, p1}, Lcom/king/zxing/CaptureHandler;->setReturnBitmap(Z)V

    .line 718
    :cond_9
    return-object p0
.end method

.method public setOnCaptureCallback(Lcom/king/zxing/OnCaptureCallback;)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .param p1, "callback"    # Lcom/king/zxing/OnCaptureCallback;

    .line 808
    iput-object p1, p0, Lcom/king/zxing/CaptureHelper;->onCaptureCallback:Lcom/king/zxing/OnCaptureCallback;

    .line 809
    return-object p0
.end method

.method public supportAutoZoom(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "supportAutoZoom"    # Z

    .line 728
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isSupportAutoZoom:Z

    .line 729
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_9

    .line 730
    invoke-virtual {v0, p1}, Lcom/king/zxing/CaptureHandler;->setSupportAutoZoom(Z)V

    .line 732
    :cond_9
    return-object p0
.end method

.method public supportLuminanceInvert(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "supportLuminanceInvert"    # Z

    .line 741
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isSupportLuminanceInvert:Z

    .line 742
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_9

    .line 743
    invoke-virtual {v0, p1}, Lcom/king/zxing/CaptureHandler;->setSupportLuminanceInvert(Z)V

    .line 745
    :cond_9
    return-object p0
.end method

.method public supportVerticalCode(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "supportVerticalCode"    # Z

    .line 658
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isSupportVerticalCode:Z

    .line 659
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->captureHandler:Lcom/king/zxing/CaptureHandler;

    if-eqz v0, :cond_9

    .line 660
    invoke-virtual {v0, p1}, Lcom/king/zxing/CaptureHandler;->setSupportVerticalCode(Z)V

    .line 662
    :cond_9
    return-object p0
.end method

.method public supportZoom(Z)Lcom/king/zxing/CaptureHelper;
    .registers 2
    .param p1, "supportZoom"    # Z

    .line 604
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isSupportZoom:Z

    .line 605
    return-object p0
.end method

.method public surfaceChanged(Landroid/view/SurfaceHolder;III)V
    .registers 5
    .param p1, "holder"    # Landroid/view/SurfaceHolder;
    .param p2, "format"    # I
    .param p3, "width"    # I
    .param p4, "height"    # I

    .line 374
    return-void
.end method

.method public surfaceCreated(Landroid/view/SurfaceHolder;)V
    .registers 3
    .param p1, "holder"    # Landroid/view/SurfaceHolder;

    .line 362
    if-nez p1, :cond_7

    .line 363
    const-string v0, "*** WARNING *** surfaceCreated() gave us a null surface!"

    invoke-static {v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;)V

    .line 365
    :cond_7
    iget-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    if-nez v0, :cond_11

    .line 366
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    .line 367
    invoke-direct {p0, p1}, Lcom/king/zxing/CaptureHelper;->initCamera(Landroid/view/SurfaceHolder;)V

    .line 369
    :cond_11
    return-void
.end method

.method public surfaceDestroyed(Landroid/view/SurfaceHolder;)V
    .registers 3
    .param p1, "holder"    # Landroid/view/SurfaceHolder;

    .line 378
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/king/zxing/CaptureHelper;->hasSurface:Z

    .line 379
    return-void
.end method

.method public tooDarkLux(F)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "tooDarkLux"    # F

    .line 688
    iput p1, p0, Lcom/king/zxing/CaptureHelper;->tooDarkLux:F

    .line 689
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->ambientLightManager:Lcom/king/zxing/AmbientLightManager;

    if-eqz v0, :cond_9

    .line 690
    invoke-virtual {v0, p1}, Lcom/king/zxing/AmbientLightManager;->setTooDarkLux(F)V

    .line 692
    :cond_9
    return-object p0
.end method

.method public vibrate(Z)Lcom/king/zxing/CaptureHelper;
    .registers 3
    .param p1, "vibrate"    # Z

    .line 590
    iput-boolean p1, p0, Lcom/king/zxing/CaptureHelper;->isVibrate:Z

    .line 591
    iget-object v0, p0, Lcom/king/zxing/CaptureHelper;->beepManager:Lcom/king/zxing/BeepManager;

    if-eqz v0, :cond_9

    .line 592
    invoke-virtual {v0, p1}, Lcom/king/zxing/BeepManager;->setVibrate(Z)V

    .line 594
    :cond_9
    return-object p0
.end method