camera


takePicture

카메라가 사용 가능한 경우 카메라로 찍어 로컬에 저장되어있는 사진 또는 직접사진촬영을 통해 사진을 얻거나 내장앨범으로부터 사진을 얻는다. 단말에 카메라가 없는 경우 errorCallback이 호출된다.

기본적인 옵션 설정 내용은 JSON Object 형식으로 전달한다.

options

필드설명M/O
quality사진 품질M
width가로크기 픽셀M
height세로크기 픽셀
  • width < 1, height < 1 이면 리사이징하지 않고 원본 그림을 가지고 오며 업로드 시 원본 파일 이름이 전달됨.
  • 리사이징이 일어날 경우 임시 파일이 생성되며 임시파일명이 업로드시 전달됨 (안드로이드:resize.jpg)
  • iOS는 업로드시 파일 이름이 항상 photo_xxxxxx.jpg 형식으로 전송됨
M
sourceType입력소스타입
  • camera : 카메라로 부터 직접 찍어서 사진을 얻음
  • library : 내장 앨범으로 사진을 얻음
M
destType가져올 사진의 타입
  • uri : 로컬 URI
  • data : base64형태의 data, 이 값이 사용될 경우 width/height는 160x120를 최대크기로 동작 
M
   

successCallback

필드설명
result이미지 URI
  

errorCallback

필드설명
code에러코드
message에러메세지
   

Example

var quality    = 50;
var width      = 160;
var height     = 120;
var sourceType = "camera";
var destType   = "uri";

hone.channel.execute('camera', 'takePicture',
    [quality, width, height, sourceType, destType],
   function (result) {
       //var img = document.getElementById('myImage');
       //img.src = result;
   },
   function (e) {
        alert(JSON.stringify(e));
    }
);

Result

문자열로 사진을 찍은 경로나 선택한 파일의 절대 경로를 반환 한다.

"/storage/emulated/0/Pictures/1485914275132.jpg"

Error Code

CodeCauseComment
E11400파라메터 값이 잘못되어 있을 경우 
E11401전달된 액션 값이 알 수 없는 액션일 경우 
E11402입력소스 타입 값이 잘못되어 있을 경우 
E11403너비 값이 정수값이 아닌 경우 
E11404높이 값이 정수값이 아닌 경우 
E11405사진결과 타입 값이 잘못되어 있을 경우 
E11406사진 품질 값이 1 ~ 100 사이의 정수값이 아닌 경우 
E11450실행 중 오류가 발생 되었을 경우 
E11451이미지 처리 중 오류가 발생 되었을 경우 
E11452사용자가 실행을 취소 하였을 경우 
E11499알 수 없는 오류가 발생 되었을 경우