有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用CameraKit保存照片和视频

我正在使用Flurgle Camerakit制作一个相机应用程序,我有一个camerapreview,我可以打电话给摄影师,但之后我该怎么做

手册上说在我点击快门按钮时要包括以下内容

cameraView.captureImage();

            cameraView.setCameraListener(new CameraListener() {
                @Override
                public void onPictureTaken(byte[] picture) {
                    super.onPictureTaken(picture);

                    Bitmap result = BitmapFactory.decodeByteArray(picture, 0, picture.length);
                    ByteArrayOutputStream stream = new ByteArrayOutputStream();
                    result.compress(Bitmap.CompressFormat.PNG, 50, stream);
                    byte [] picArray = stream.toByteArray();


                }
            });

当我这样做时,我的应用程序会在我单击快门按钮时冻结并崩溃。我也不知道如何在手机上的任何地方保存我拍摄的照片

视频功能也是如此。他们说包括:

cameraView.startRecordingVideo();

                    cameraView.setCameraListener(new CameraListener() {
                    @Override
                    public void onVideoTaken(File video) {
                        super.onVideoTaken(video);
                        // The File parameter is an MP4 file.
                    }
                });

                    cameraView.startRecordingVideo();
                    cameraView.postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            cameraView.stopRecordingVideo();
                        }
                    }, 2500);

但是,当我这样做时,我得到了与以前相同的错误,应用程序冻结并崩溃

有人能告诉我如何将创建的文件保存到手机上吗

提前谢谢

编辑1:当我按下视频按钮时,这是logcat错误。事实证明,当我按下快门按钮拍照时没有错误,只是需要很长时间才能将手机中的13MP数据转换成阵列

08-04 18:14:13.794 25959-26024/com.example.mayankthakur.myapplication E/Surface: getSlotFromBufferLocked: unknown buffer: 0x7f92bda9a0
08-04 18:16:42.314 25959-25959/com.example.mayankthakur.myapplication E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                        Process: com.example.mayankthakur.myapplication, PID: 25959
                                                                                        java.lang.RuntimeException: unlock failed
                                                                                            at 安卓.hardware.Camera.unlock(Native Method)
                                                                                            at com.flurgle.camerakit.Camera1.initMediaRecorder(Camera1.java:406)
                                                                                            at com.flurgle.camerakit.Camera1.startVideo(Camera1.java:233)
                                                                                            at com.flurgle.camerakit.CameraView.startRecordingVideo(CameraView.java:322)
                                                                                            at com.example.mayankthakur.myapplication.Activity2.onClick(Activity2.java:180)
                                                                                            at 安卓.view.View.performClick(View.java:5269)
                                                                                            at 安卓.view.View$PerformClick.run(View.java:21548)
                                                                                            at 安卓.os.Handler.handleCallback(Handler.java:815)
                                                                                            at 安卓.os.Handler.dispatchMessage(Handler.java:104)
                                                                                            at 安卓.os.Looper.loop(Looper.java:207)
                                                                                            at 安卓.app.ActivityThread.main(ActivityThread.java:5740)
                                                                                            at java.lang.reflect.Method.invoke(Native Method)
                                                                                            at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
                                                                                            at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:766)

我仍然想知道如何保存我拍摄的照片,以及如何保存我将拍摄的视频


共 (1) 个答案

  1. # 1 楼答案

    检查CameraKit的这一部分

    ckPermissions

    严格的懒惰图片

    严格的

    cameraView.setPermissions(CameraKit.Constants.PERMISSIONS_STRICT);
    

    懒惰的

    cameraView.setPermissions(CameraKit.Constants.PERMISSIONS_LAZY);
    

    图画

    cameraView.setPermissions(CameraKit.Constants.PERMISSIONS_PICTURE);