2013-06-17 2 views
3

cordova 사용 2.8.1 photolibrary로 camera.getPicture를 수행하려고합니다. 그것은 안드로이드를 위해 일하고있는 것처럼 보이지만 iOS에는 작동하지 않는 것 같습니다. 아래는 getPicture 코드를 호출하는 방법입니다. 그게 오류 콜백 인수가 null 인 상태라고 할로 아이폰 OS 6 아이폰 4S에 그것은 나를 빨리 이미지를 선택 만 할 수 있습니다코도 바 2.8.1 : ios에 photolibarary 소스가있는 camera.getPicture

var options = { 
      quality : 30, 
      destinationType : Camera.DestinationType.FILE_URI, 
      sourceType : Camera.PictureSourceType.PHOTOLIBRARY, 
      correctOrientation: true, 
      targetWidth: 800, 
      targetHeight: 800 
    }; 

navigator.camera.getPicture(this.captureSuccessPre, this.captureError, options); 

나는 console.logs 주위에 시간 제한을 추가 들었다 . 전화 걸기 문서에는 경고 주위에 그렇게 설명되어 있습니다. 다음은 내 오류 콜백입니다. 로그 [오류 null]

captureError: function(error){ 
    setTimeout(function(){ 
     console.log("error " + error); //logs error null 
    }, 100); 
} 

누구나 아이디어가 있습니다. 나는 며칠 동안 애를 썼다. 이 코드가 완벽하게 작동하는 데 도움이된다면

sourceType : Camera.PictureSourceType.CAMERA, 

답변

10

정확히 같은 문제가 있습니다. DestinationType.FILE_URI와 관련이있는 것 같습니다.

이 시도 : 버그는 2.8.0에 있던 같은

var options = { 
     quality : 30, 
     destinationType: navigator.camera.DestinationType.NATIVE_URI, 
     sourceType : Camera.PictureSourceType.PHOTOLIBRARY, 
     correctOrientation: true, 
     targetWidth: 800, 
     targetHeight: 800 
}; 
+0

을 위해 도움이됩니다 이것을보십시오! 정말 고맙습니다. 나는 upvote 줄 것이다,하지만 나는 너무 많이 stackoverflow 초보자 수 있도록하는 것 같아요. –

+0

한가지 주목할 점은 카메라 캡쳐 (sourceType : Camera.PictureSourceType.CAMERA)가 iPad2에서 작동하지 않는다는 것입니다. –

+1

그래, 나도 그걸 만났어 ... 나는 FILE_URI로 전환하고 encodingType을 넣었다 : encodingType : Camera.EncodingType.PNG 너무 일하게 된 것 같습니다 ... – LucP

2

이 보이는 - 당신은 2.9.0로 업그레이드하는 경우 그것을 수정 ([CB-3757] photolib에서 camera.getPicture이 iOS에서 실패 - https://github.com/phonegap/phonegap/blob/2.9.0/changelog)

+0

그냥 업그레이드했는데 문제가 2.9에서 지속되는 것 같습니다. 나를 위해. –

0

그것은 당신이 최고 당신

function uploadFromGallery(){ 
     navigator.camera.getPicture(uploadPhoto,function(message){ 
      console.log('get picture failed'); }, 
     {quality: 75, 
      destinationType: navigator.camera.DestinationType.FILE_URI, 
      sourceType:navigator.camera.PictureSourceType.PHOTOLIBRARY, 
      allowEdit:true, 
      targetWidth: 100, 
      targetHeight: 100 
     }); 
} 
관련 문제