Android相机错误5001

时间:2014-05-05 13:00:14

标签: android android-camera

我刚拿到一台相机"错误5001"在我的Android应用上加载Camera对象时出错。

E/Camera: Error 5001

我甚至无法使用" home"退出应用程序。按钮,它冻结90秒。 我无法找到有关该错误的任何文档。

5001是什么意思?

90秒后,logcat记录:

W/CameraBase: Camera service died!

现在我无法正常运行该应用。 屏幕为绿色,无法加载相机。

重新启动修复了相机问题,但我想知道:

  • 实际发生的事情
  • 如何避免

该设备是一款带有Android 4.4.2的Moto X.

感谢您提供任何信息。

修改

public final class BarcodePreview extends SurfaceView implements SurfaceHolder.Callback {

    private Activity mActivity;
    private SurfaceHolder mSurfaceHolder;
    private Camera mCamera;
    private PreviewCallback mPreviewCallback;
    private AutoFocusCallback mAutoFocusCallback;

    public BarcodePreview(final Activity activity, final Camera camera, final PreviewCallback previewCallback, final AutoFocusCallback autoFocusCallback) throws Exception {
        super(activity);

        mActivity = activity;
        mCamera = camera;
        mPreviewCallback = previewCallback;
        mAutoFocusCallback = autoFocusCallback;

        mSurfaceHolder = getHolder();
        if (mSurfaceHolder == null) {
            // ...
        }

        mSurfaceHolder.addCallback(this);
    }

    @Override
    public void surfaceCreated(final SurfaceHolder surfaceHolder) {
        try {
            mCamera.setPreviewDisplay(surfaceHolder);
        }
        catch (Exception e) {
            // ...
        }
    }

    @Override
    public void surfaceDestroyed(final SurfaceHolder surfaceHolder) {
            // ...
    }

    @Override
    public void surfaceChanged(final SurfaceHolder surfaceHolder, final int format, final int width, final int height) {
        if (mSurfaceHolder.getSurface() == null) {
            // ...
            return ;
        }

        try {
            mCamera.stopPreview();
            // ...
            mCamera.setPreviewDisplay(mSurfaceHolder);
            mCamera.setPreviewCallback(mPreviewCallback);
            mCamera.startPreview();
            mCamera.autoFocus(mAutoFocusCallback);
        }
        catch (Exception e) {
            // ...
        }
    }
}

1 个答案:

答案 0 :(得分:1)

正如我所指出的,这个错误似乎只发生在Moto X上,并且似乎特定于某些用例。

在运行Android 4.4.2的设备上不时发生这种情况。

对我而言,它只是一个特定/过于本地化的错误。

关闭。

相关问题