2011-02-19 7 views
0

내 응용 프로그램은 활동에 의해 수동으로 출시 될 때까지 캡처 한 카메라를 유지해야합니다 (다른 응용 프로그램에서 카메라를 사용할 수 없으므로 나쁜 습관이라는 것을 알고 있습니다). CameraPreview에서 surfaceDestroyed 함수를 호출하여 camera.release()를 호출하지 않고이 작업을 수행 할 수있었습니다. 그러나 2.1 이후에는 더 이상 작동하지 않습니다.사진을 찍은 후에 카메라를 활성 상태로 유지하십시오.

surfaceDestroyed 후에 자동으로 해제되지 않고 카메라를 사로 잡히게 할 수있는 방법이 있습니까?

이전 질문 대신 대답 할 수있는 임시 해결책은 미리보기가 비정상적으로 나타나지 않고 서비스 내에서 사진을 찍을 수있는 방법이 있습니까?

답변

0

camera.lock()을 호출하여 카메라 하드웨어의 잠금을 다시 얻을 수 있습니다. 카메라를 다시 열 수 없으면.

그러나이 단점은 다른 앱이 카메라에 액세스하는 것을 방지하는 것보다 훨씬 나쁩니다. 또한 카메라 센서와 DSP 전원을 유지하기 때문에 배터리를 빠르게 소모합니다. this thread에 따르면 2 시간 내에 배터리가 죽을 수 있습니다.

+0

답 해 주셔서 감사합니다. 카메라를 최대한 빨리 잠급니다. 배터리 소모가 그리 큰 문제는 아니지만 내 앱에는 휴대 전화가 연결되어 있어야합니다. 카메라를 다시 잠궈도 작동하지 않는 경우 표면 팝업을 사용하지 않고 카메라를 다시 열 수 있습니까? –

+0

내가 필요할 때 카메라를 다시 열어서이 문제를 해결했지만 아직 백그라운드에서 작동하지는 못합니다. 감사! –

관련 문제