Не удалось подключиться к камере Сервис - PullRequest
0 голосов
/ 16 октября 2011

Я видел много вопросов в стеке, но никто не говорит, произойдет ли сбой соединения с камерой, как избавиться от этого RuntimeException.

У меня есть приложение для камеры, оно работает нормально, я уже позаботился об освобождении ресурсов, но если каким-то образом пользователь установит другое приложение, которое не высвобождает ресурсы должным образом, мое приложение сталкивается с RuntimeException: Fail to connect to camera Service и, следовательно, выходит из строя, хочу избежать этого ситуация.

Если я нажму на оригинальное приложение камеры, оно покажет мне AlertDialog

Camera error: Cannot connect to camera.

Это то, что я хочу, чтобы справиться с этим. Я пытаюсь обработать этот код, но пока не могу.

try {
    camera = Camera.open();
    camera.setDisplayOrientation(90);
} catch (RuntimeException e) {
    // TODO: handle exception
    Log.d("Inside RunTime exception", e+"//");
    camera.setErrorCallback(errorCallback);
    reConnectCameraVideo();
} catch(Exception e) {
    finish();
}

но объект камеры возвращает * null camera.setErrorCallback, потому что он не открывается.

1 Ответ

1 голос
/ 16 октября 2011

setErrorCallback() нельзя использовать для случая, когда Camera не открывается.Вы, кажется, пытаетесь все еще использовать Camera - AFAIK, это невозможно, пока пользователь не перезагрузит свой телефон, если какое-то другое приложение пропустит Camera.Просто отобразите собственное сообщение на этот счет.

Также:

  • Используйте службу регистрации ошибок, такую ​​как ACRA, Flurry, BugSense и т. Д.

  • Никогда не заканчивайте занятие вслепую из-за исключения, как в вашем последнем catch блоке.Всегда делайте что-то, чтобы пользователь и / или вы (через службу регистрации ошибок) знали об исключении

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...