美文网首页
二维码扫描

二维码扫描

作者: 秋刀鱼_87c6 | 来源:发表于2018-04-17 16:17 被阅读20次

二维码

  • 扫描区域的绘制

    • 布局实现

      <SurfaceView
      android:id="@+id/preview_view"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent" />

      <com.google.zxing.client.android.decode.ViewfinderView
      android:id="@+id/viewfinder_view"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_centerInParent="true" />

  • 初始化相机管理器

      cameraManager = new CameraManager(getApplication());
    
      viewfinderView = (ViewfinderView) findViewById(R.id.viewfinder_view);
      viewfinderView.setCameraManager(cameraManager);
    
      handler = null;
      SurfaceView surfaceView = (SurfaceView) findViewById(R.id.preview_view);
      SurfaceHolder surfaceHolder = surfaceView.getHolder();
      if (hasSurface) {
          // The activity was paused but not stopped, so the surface still
          // exists. Therefore
          // surfaceCreated() won't be called, so init the camera here.
          initCamera(surfaceHolder);
      } else {
          // Install the callback and wait for surfaceCreated() to init the
          // camera.
          surfaceHolder.addCallback(this);
          surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
      }
    
  • 解析扫描结果

      public void handleDecode(Result rawResult, Bitmap barcode) {
      inactivityTimer.onActivity();
      ResultHandler resultHandler = ResultHandlerFactory.makeResultHandler(
              this, rawResult);
    
      boolean fromLiveScan = barcode != null;
      if (fromLiveScan) {
          // Then not from history, so beep/vibrate and we have an image to
          // draw on
          beepManager.playBeepSoundAndVibrate();
          // drawResultPoints(barcode, rawResult);
          viewfinderView.drawResultBitmap(barcode);
      }
    
      String text = rawResult.getText();
    
      Toast.makeText(this, "扫描结果:" + text, Toast.LENGTH_LONG).show();
      Log.d(TAG, "result-->" + text);
    

    }

相关文章

网友评论

      本文标题:二维码扫描

      本文链接:https://www.haomeiwen.com/subject/lahpkftx.html