ios 保存:
React Native 的 CameraRoll API 提供了访问本地相册的功能(经过测试该组件只支持 ios)
import {Platform,CameraRoll} from 'react-native';
var promise = CameraRoll.saveToCameraRoll("图片的 url")
promise.then(function(result) {
this.refs.toast.show("图片已保存至相册")
}).catch(function(error) {
this.refs.toast.show("保存失败")
})
Android 的保存利用 react-native-fs 进行保存图片
const RNFS = require('react-native-fs') //文件处理
const storeLocation = `${RNFS.DocumentDirectoryPath}`
// 安卓上传图片
function sendImgAndroid(url,succeedFun,errerFn){
console.log(url)
let pathName = new Date().getTime() + "xg.png"
let downloadDest = `${storeLocation}/${pathName}`;
const ret = RNFS.downloadFile({fromUrl:url,toFile:downloadDest});
ret.promise.then(res => {
if(res && res.statusCode === 200){
var promise = CameraRoll.saveToCameraRoll("file://" + downloadDest);
promise.then(function(result) {
// 保存成功
console.log('图片保存成功')
succeedFun(result)
}).catch(function(error) {
// 保存失败
console.log('图片保存失败')
errerFn(error)
})
}
})
}