我的应用正在使用相机。我有一个CameraActivity
班级和CameraFragment
班级,
CameraFragment负责释放相机:
@Override
public void onPause() {
super.onPause();
if (mCamera != null) {
mCamera.release();
mCamera = null;
}
}
我的应用在拍照时崩溃了。由于某种原因,相机没有被释放。现在我无法让相机对象无处可去!此外,Android相机应用程序无法处理错误“无法连接到相机”
现在我知道相机是一个单例对象,只有一个应用程序可以在一段时间内获得它。 我不明白为什么onPause没有运行,我怎样才能更好地保护相机实例?
如果发生类似的事情,我怎么强行释放相机对象?这是一个好主意吗?
遗憾的是,我不知道应用程序首先崩溃的原因。
感谢您的帮助。
罗伊
答案 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);
}
});
}