У меня есть приложение, в котором я использую камеры устройств.
Теперь я освобождаю камеру только в нормальном режиме.
@Override
public void surfaceDestroyed(SurfaceHolder surfaceHolder) {
if(camera != null) {
camera.stopPreview();
camera.release();
}
}
Таким образом, приложение неожиданно завершает работу в режиме камеры, т.е. Force Close (из-за OutOfMemoryError
) - камера блокируется. И единственный способ его освободить - перезапустить устройство.
И после запуска приложения я получаю:
RuntimeException: Fail to connect to camera service
Как я могу убедиться, что камера выпущена в любом случае?