Camera2是5.0后的api,网上暂时没找到对于Camera2进行扫码解析的代码。
写此文纯粹为了个人日后方便查询。
package com.example.one.codescanm; import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.ImageFormat; import android.hardware.camera2.CameraAccessException; import android.hardware.camera2.CameraCaptureSession; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraDevice; import android.hardware.camera2.CameraManager; import android.hardware.camera2.CaptureRequest; import android.hardware.camera2.CaptureResult; import android.hardware.camera2.TotalCaptureResult; import android.media.Image; import android.media.ImageReader; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.Message; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.widget.ImageView; import com.google.zxing.BinaryBitmap; import com.google.zxing.ChecksumException; import com.google.zxing.DecodeHintType; import com.google.zxing.FormatException; import com.google.zxing.NotFoundException; import com.google.zxing.Result; import com.google.zxing.common.HybridBinarizer; import com.google.zxing.qrcode.QRCodeReader; import java.nio.ByteBuffer; import java.util.Arrays; import java.util.Hashtable; public class MainActivity extends Activity { private CameraManager cameraManager; private String camerid; private Handler handler; private SurfaceHolder holder; private CaptureRequest.Builder build; private ImageReader imageReader; private SurfaceView surfaceView; private ImageView imageView; private Bitmap bitmap2; private C