应用程序崩溃后相机未发布

时间:2014-05-03 09:23:19

标签: android android-camera

我的应用正在使用相机。我有一个CameraActivity班级和CameraFragment班级,

CameraFragment负责释放相机:

@Override
public void onPause() {
    super.onPause();

    if (mCamera != null) {
        mCamera.release();
        mCamera = null;
    }
}

我的应用在拍照时崩溃了。由于某种原因,相机没有被释放。现在我无法让相机对象无处可去!此外,Android相机应用程序无法处理错误“无法连接到相机”

现在我知道相机是一个单例对象,只有一个应用程序可以在一段时间内获得它。 我不明白为什么onPause没有运行,我怎样才能更好地保护相机实例?

如果发生类似的事情,我怎么强行释放相机对象?这是一个好主意吗?

遗憾的是,我不知道应用程序首先崩溃的原因。

感谢您的帮助。

罗伊

1 个答案:

答案 0 :(得分:0)

这应该有所帮助:

    private static void unCaughtExceptionHandler() {
    Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        public void uncaughtException(final Thread thread, final Throwable ex) {
            ex.printStackTrace();
            releaseCamera();
            System.exit(0);
        }
    });
}