如何通过IOS上的本机响应将视频从我的应用下载到照片

时间:2019-04-22 15:49:30

标签: javascript reactjs react-native ecmascript-6

我创建了一个功能,可以通过rn-fetch-blob库将视频从url下载到本地存储,它可以在android上正常运行,但不能在ios上运行 我通过xcode添加了权限,但是当我打开照片或相机胶卷时,我找不到视频

 async download() {
        this.setState({btnDownloadLoading: true});

        const {video} = this.state;
        let hasPermission = await this.requestStoragePermission();

        console.log('hasPermission : ', hasPermission);
        if (!hasPermission) {
            this.requestStoragePermission();
            this.setState({btnDownloadLoading: false});
            return false;
        }

        var date = new Date();
        var url = video.video_url;
        var ext = this.extention(url);
        ext = "." + ext[0];
        const {config, fs} = RNFetchBlob
        let MovieDir = fs.dirs.DownloadDir
        let options = {
            fileCache: true,
            addAndroidDownloads: {
                useDownloadManager: true,
                notification: true,
                path: MovieDir + "/video_" + Math.floor(date.getTime() + date.getSeconds() / 2) + ext,
                description: 'Video'
            }
        }
        config(options).fetch('GET', url).then((res) => {
            this.setState({btnDownloadLoading: false});
            Alert.alert("تم تحميل الفيديو بنجاح.");
        });
    }

我需要可以在ios和android上运行的代码,才能将视频从网址下载到我的手机

1 个答案:

答案 0 :(得分:0)

您可以使用cameraRoll保存图像。

 CameraRoll.saveToCameraRoll(filePath, 'photo')
                .then(Alert.alert('Success', ' added to camera roll!'))

对我有用。