美文网首页
java.lang.RuntimeException: Came

java.lang.RuntimeException: Came

作者: 水墨人生乐园 | 来源:发表于2018-03-29 14:15 被阅读0次

    ava.lang.RuntimeException: Camera is being used after Camera.release() was called

    错误就是上述这个错误,错误出现在Android相机开发中,我所实现的方法贴一下:

    [java] view plain copy

    @Override  

    public void surfaceDestroyed(SurfaceHolder holder) {  

    if (!isOpenCamera)  

    return;  

    mCamera.setPreviewCallback(null);  

        mCamera.stopPreview();  

        mCamera.lock();  

        mCamera.release();  

    mCamera =null;  

    }  

    乍一看没啥错误,但是这个错误会在不经意间蹦出来影响应用的运行,直接就AAR了.所以为了解决这个错误,需要在camera调用setPreviewCallback之前加上一句代码,加完代码后的方法为:

    [java] view plain copy

    @Override  

    public void surfaceDestroyed(SurfaceHolder holder) {  

    if (!isOpenCamera)  

    return;  

    holder.removeCallback(this);  

    mCamera.setPreviewCallback(null);  

        mCamera.stopPreview();  

        mCamera.lock();  

        mCamera.release();  

    mCamera =null;  

    }  

    到此我的问题已经解决,但是我正在想为什么这么做?

    对于无法分屏,建议配置不分屏,即不会FC。

    相关文章

      网友评论

          本文标题:java.lang.RuntimeException: Came

          本文链接:https://www.haomeiwen.com/subject/mmumcftx.html