无法通过react-native-fs删除照片

时间:2019-08-26 07:29:22

标签: react-native react-native-camera react-native-fs

我使用react-native-camera拍照并通过CameraRoll将其保存到ios设备中。

代码如下:

    import { CameraRoll } from 'react-native';
    import { RNCamera } from 'react-native-camera';

    // take the picture
    const data = await this.camera.takePictureAsync(options);
    // save it to state
    this.setState({ countdownFinish: true, path: data.uri });
    // and save it to my device's gallery
    CameraRoll.saveToCameraRoll(this.state.path);

data.uri是

file:///var/mobile/Containers/Data/Application/14E28AC2-5E35-4749-B09F-75DBEB0499A4/Library/Caches/Camera/6C6B1C9F-FDAF-4BEB-BEB0-126633336671.jpg

我可以在ios设备库中找到图片。

当我尝试通过react-native-fs删除图片

代码如下:

if (this.state.path !== '') {    
  RNFS.unlink(this.state.path).then(() => {
    console.log('DELETED PHOTO');
  })
  // `unlink` will throw an error, if the item to unlink does not exist
  .catch((err) => {
    console.log(err.message);
  });
}

我可以在调试模式下看到DELETED PHOTO。但是图片仍然在我设备的图库中。

有人知道如何解决吗?

更新: 我尝试通过以下方式更改文件路径

const filePath = this.state.path.split('///').pop()  // removes leading file:///

它仍然无法正常工作。

0 个答案:

没有答案