사진 촬영

참고: 이 페이지에서는 지원 중단된 Camera 클래스를 다룹니다. CameraX, 또는 특정 사용 사례의 경우 Camera2를 사용하는 것이 좋습니다. CameraX와 Camera2는 모두 Android 5.0(API 수준 21) 이상을 지원합니다.

이 과정에서는 기기의 다른 카메라 앱에 사진 촬영 작업을 위임하여 사진을 캡처하는 방법을 알려줍니다. 자체 카메라 기능을 빌드하려면 카메라 제어를 참고하세요.

클라이언트 앱을 실행하는 기기에서 촬영한 하늘 사진을 조합하여 세계 날씨 지도를 만드는 크라우드 소싱 날씨 서비스를 구현한다고 가정해 보세요. 사진 통합은 애플리케이션에서 실행되는 다양한 작업 중 하나에 불과합니다. 카메라를 새로 만들지 않고 간단하게 사진을 촬영하고자 합니다. 다행히 대부분의 Android 지원 기기에는 이미 카메라 애플리케이션이 한 개 이상 설치되어 있습니다. 이 과정에서는 카메라 애플리케이션을 사용하여 사진을 촬영하는 방법을 배웁니다.

카메라 기능 요청

애플리케이션의 필수 기능이 사진 촬영이라면 Google Play에서 공개 상태를 카메라가 있는 기기로 제한하세요. 애플리케이션이 카메라를 필요로 한다고 알리려면 다음과 같이 매니페스트 파일에 <uses-feature> 태그를 삽입합니다.

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

애플리케이션이 카메라를 사용하기는 하지만 작동하는 데 꼭 필요한 것이 아니라면 android:requiredfalse로 설정합니다. 그렇게 하면 Google Play에서 카메라가 없는 기기도 애플리케이션을 다운로드할 수 있습니다. 그런 다음 런타임 시 hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY)를 호출하여 카메라의 사용 가능 여부를 확인해야 합니다. 카메라를 사용할 수 없는 경우 카메라 기능을 중지합니다.