Android相机无法连接到服务

时间:2017-10-15 04:38:22

标签: android video android-camera

我'当我的应用程序打开时出现问题,因为当应用程序打开时,问题是cameraource不是null或类似的东西,并且不能在所有手机上运行。

这些是错误:

  

10-15 00:35:17.164 11270-11270 / com.google.android.gms.samples.vision.face.facetracker E / AndroidRuntime:FATAL EXCEPTION:main                                                                                                           java.lang.RuntimeException:无法连接到摄像头服务                                                                                                               在android.hardware.Camera.native_setup(本机方法)                                                                                                               在android.hardware.Camera。(Camera.java:423)                                                                                                               在android.hardware.Camera.open(Camera.java:384)                                                                                                               在com.google.android.gms.vision.CameraSource.zzchq(未知来源)                                                                                                               在com.google.android.gms.vision.CameraSource.start(未知来源)                                                                                                               在com.google.android.gms.samples.vision.face.facetracker.ui.camera.CameraSourcePreview.startIfReady(CameraSourcePreview.java:99)                                                                                                               在com.google.android.gms.samples.vision.face.facetracker.ui.camera.CameraSourcePreview.access $ 200(CameraSourcePreview.java:34)                                                                                                               在com.google.android.gms.samples.vision.face.facetracker.ui.camera.CameraSourcePreview $ SurfaceCallback.surfaceCreated(CameraSourcePreview.java:122)                                                                                                               在android.view.SurfaceView.updateWindow(SurfaceView.java:606)                                                                                                               在android.view.SurfaceView.access $ 000(SurfaceView.java:88)                                                                                                               在android.view.SurfaceView $ 3.onPreDraw(SurfaceView.java:183)                                                                                                               在android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:692)                                                                                                               在android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2123)                                                                                                               在android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1139)                                                                                                               在android.view.ViewRootImpl $ TraversalRunnable.run(ViewRootImpl.java:4879)                                                                                                               在android.view.Choreographer $ CallbackRecord.run(Choreographer.java:776)                                                                                                               在android.view.Choreographer.doCallbacks(Choreographer.java:579)                                                                                                               在android.view.Choreographer.doFrame(Choreographer.java:548)                                                                                                               在android.view.Choreographer $ FrameDisplayEventReceiver.run(Choreographer.java:762)                                                                                                               在android.os.Handler.handleCallback(Handler.java:725)                                                                                                               在android.os.Handler.dispatchMessage(Handler.java:92)                                                                                                               在android.os.Looper.loop(Looper.java:153)                                                                                                               在android.app.ActivityThread.main(ActivityThread.java:5313)                                                                                                               at java.lang.reflect.Method.invokeNative(Native Method)                                                                                                               在java.lang.reflect.Method.invoke(Method.java:511)                                                                                                               在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:833)                                                                                                               在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)                                                                                                               在dalvik.system.NativeStart.main(本地方法)

这些是崩溃应用程序的功能:

private void startIfReady() throws IOException {
    if (mStartRequested && mSurfaceAvailable) {
        if (ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
            // TODO: Consider calling
            //    ActivityCompat#requestPermissions
            // here to request the missing permissions, and then overriding
            //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
            //                                          int[] grantResults)
            // to handle the case where the user grants the permission. See the documentation
            // for ActivityCompat#requestPermissions for more details.
            return;
        }
        mCameraSource.start(mSurfaceView.getHolder());
        if (mOverlay != null) {
            Size size = mCameraSource.getPreviewSize();
            int min = Math.min(size.getWidth(), size.getHeight());
            int max = Math.max(size.getWidth(), size.getHeight());
            if (isPortraitMode()) {
                // Swap width and height sizes when in portrait, since it will be rotated by
                // 90 degrees
                mOverlay.setCameraInfo(min, max, mCameraSource.getCameraFacing());
            } else {
                mOverlay.setCameraInfo(max, min, mCameraSource.getCameraFacing());
            }
            mOverlay.clear();
        }
        mStartRequested = false;
    }
}

0 个答案:

没有答案