簡體   English   中英

獲取默認的相機預覽框

[英]Get default camera preview frames

我有這段代碼可以打開fefault相機

Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            startActivityForResult(camera, CAMERA_REQUEST);

而這是為了捕捉照片

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

            Bitmap bitmap = (Bitmap) Objects.requireNonNull(data.getExtras()).get("data");
            ByteArrayOutputStream stream=new ByteArrayOutputStream();
            assert bitmap != null;
            bitmap.compress(Bitmap.CompressFormat.PNG,100,stream);
            byte[] imageBytes=stream.toByteArray();
            sendReceive.write(String.valueOf(imageBytes.length).getBytes());

            int subArraySize=400;

            for(int i=0;i<imageBytes.length;i+=subArraySize){
                byte[] tempArray;
                tempArray= Arrays.copyOfRange(imageBytes,i,Math.min(imageBytes.length,i+subArraySize));
                sendReceive.write(tempArray);
            }
}

我有一個問題,如何捕捉相機預覽框?

您無法使用Intent來實現,而必須以自己的方式實現。 例如,對於Camera2 ,您必須使用TextureView,CameraCaptureSession,ImageReader等。

您可以看一下這個樣本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM