날마다 새롭게 또 날마다 새롭게

Android App - 간단한 Camera Preview 만들기 본문

프로그래밍/Android

Android App - 간단한 Camera Preview 만들기

아무유 2013. 1. 29. 20:22

1. 카메라 기능을 사용하기 위해 매니페스트에 다음 선언문을 작성한다.

<uses-permission android:name="android.permission.CAMERA" />

<uses-feature android:name="android.hardware.camera" />

<uses-feature android:name="android.hardware.camera.autofocus" />


2. 정적 메서드로 카메라 객체를 생성한다.

static Camera open()

3. 객체 생성 후 미리보기 표면을 제공하기 위해 미리보기 표면과 방향을 지정한다.

void setPreviewDisplay(SurfaceHolder holder)

void setDisplayOrientation(int degrees)


4. 카메라의 동작 방식이나 여러 가지 옵션을 지정하는 파라미터를 설정한다. (해상도, 품질, 미리보기 크기 등등)

Camera.Parameters getParameters() : 현재 파라미터를 값을 읽어온다. 

void setParameters(Camera.Parameters params) : 파라미터를 설정한다.

- 미리보기 영역의 크기 목록을 조사하고 설정하는 메서드

List<Camera.Size> Camera.Parameters.getSupportedPreviewSizes()

void Camera.Parameters.setPreviewSize(int width, int height)

- 사진의 해상도를 조사 및 지정하는 방식

List<Camera.Size> getSupportedPictureSizes()

void setPictureSize(int width, int height)

5. 파라미터 설정 후, 미리보기를 표시한다.

void startPreview()

void stopPreview()



6. Layout.xml  파일을 작성한다.


7. 질 좋은 이미지를 얻기 위해 오토 포커싱 과정을 거친다.

void autoFocus(Camera.AutoFocusCallback cb)

void AutoFocusCallback.onAutoFocus(boolean success, Camera camera)

void cancelAutoFocus()

※ 장비가 오토 포커싱을 지원하지 않으면 콜백이 즉시 호출되며 포커싱은 성공한 것으로 가정한다.





Comments