React-Native

react-native-image-crop-picker, ImagePicker 안드로이드(android)에서 Cannot find image data 해결하는법

살다보니개발자 2023. 2. 25. 22:05
   ImagePicker.openPicker({
      width: 300,
      height: 400,
      cropping: true,
    }).then(image => {
      console.log(image);
    }).catch(e => console.log('error', e));

안드로이드에서 해당 ImagePicker를 동작할때, gif 또는 webp,heic 고효율 이미지일때

아래와 같은 에러가 발생했다.

Cannot find image data
    at Object.promiseMethodWrapper [as openPicker] (NativeModules.js:103)
    at HomeScreen.loadImageGallery (homescreen.js:107)
    at Object.onPress (homescreen.js:75)
    at onAction (Alert.js:92)
    at MessageQueue.__invokeCallback (MessageQueue.js:472)
    at MessageQueue.js:136
    at MessageQueue.__guard (MessageQueue.js:373)
    at MessageQueue.invokeCallbackAndReturnFlushedQueue (MessageQueue.js:135)
    at RNDebuggerWorker.js:2

해당 라이브러리의 이슈사항을 참고하니, 안드로이드 같은경우에는 데이터가 큰 이미지일 경우 크롭을 하는 과정에서 이미지를 불러오기전에 크롭이 되어버려서 그런것 같았다.

 

해결방법은 openPicker 또는 openCamera를 호출 한다음 openCropper를 호출하면 된다.

 

해결방법 예시:

let selectedImage = await ImagePicker.openPicker({
      mediaType: "photo",
      cropping: false,
    });

let croppedImage = await ImagePicker.openCropper({
  path: selectedImage.path,
  width: props.width, 
  height: props.height, 
})

출처: https://github.com/ivpusic/react-native-image-crop-picker/issues/1367

 

Android only: "Cannot find image data" crashes on webp images · Issue #1367 · ivpusic/react-native-image-crop-picker

Version Tell us which versions you are using: react-native-image-crop-picker v0.32.2 react-native v0.62.0 Platform Issue only happens on Android, iOS working as expected. Expected behaviour When se...

github.com

태클은 언제나 환영입니다 잘못된부분이 있으면 댓글달아주세요 감사합니다 :)