React native:image-crop-picker 崩溃应用 Android

React native: image-crop-picker crash app Android

我使用 react-native-fs 从服务器下载图像,然后使用 react-native-image-crop-picker 中的 openCropper() 进行裁剪。它在 iOS 中运行良好,但在 Android 运行 中崩溃,没有任何错误消息或警报。

你遇到过这个问题吗?给我一个指南。谢谢大家。

 const onCropImage = async () => {
    setViewImageModal(false);

    const uri = `${RNFS.DocumentDirectoryPath}/${fileName}`;
    let options = {
      fromUrl: viewImage && viewImage[0].url,
      toFile: uri,
    };

    await RNFS.downloadFile(options).promise;

// App crashed when I call .openCropper() in Android running
    ImageCropPicker.openCropper({
      path: uri,
      width: 300,
      height: 400,
      cropping: true,
      freeStyleCropEnabled: true,
    })
      .then((image) => {
        if (image) {
          const temp = image.path.split("/");
          const imageName = temp[temp.length - 1];
          navigation.navigate("EditHostScreen", {
            host,
            type: "hosts",
            info: { uri: image.path, typeImage: image.mime, name: imageName },
          });

          const time = setTimeout(() => {
            ImageCropPicker.clean();
            if (uri) {
              RNFS.unlink(uri);
            }
          }, 100000);
          clearTimeout(time);
        }
      })
      .catch((err) => {
        // console.log(err);
      });
  };

您需要添加 android 特定路径值。

import { Platform } from 'react-native';

    ImageCropPicker.openCropper({
      path: Platform.OS === "android" ('file://' + uri) : uri,
      width: 300,
      height: 400,
      cropping: true,
      freeStyleCropEnabled: true,
    })