안녕하세요~ 안드로이드 초보입니다.
카메라를 쓰레드로 구현하는 중인데, 작동이 안되는 상황은 아니고 궁금한 부분이 있어서 질문드립니다.
일단 아래 코드로 구조를 파악하실 수 있으실 겁니다.
public class CameraActivity extends AppCompatActivity {
CameraView mViewCamera;
...
Camera.PictureCallback mPicture = new Camera.PictureCallback() {
...
mViewCamera.mThreadCam.tCamera.startPreview();
}
}
class CameraView extends SurfaceView implements SurfaceHolder.Callback {
CameraThread mThreadCam;
...
public void surfaceCreated(SurfaceHolder surfaceHolder) {
mThreadCam = new CameraThread(this, mHolder);
mThreadCam.start();
}
...
class CameraThread extends Thread {
Camera tCamera;
...
public void run() {
tCamera.startPreview();
}
}
}
안드로이드 카메라 구현해 보신분들 아시겠지만 셔터를 누르면 미리보기는 자동으로 중지되는데
중지된 미리보기를 다시 시작하도록 Camera.PictureCallback() 마지막에 startPreview() 메서드를
다시 호출했구요.
제가 궁금한 것은 다시 startPreview() 메서드를 호출 했을 때 카메라 미리보기가
카메라 쓰레드에서 동작하는 것인지 아니면...
Camera.PictureCallback() 의 startPreview() 메서드는 메인 쓰레드에서 호출된 것이니
메인 쓰레드에서 동작하는 것인지가 궁금합니다.
그럼 아시는 분 답변 좀 부탁드릴께요.
미리 감사합니다~