React Native - 如何将捕获的图像存储在其他文件夹而不是图片文件夹中
React Native - How to store captured images other folder instead of Pictures folder
我创建了一个简单的应用程序来捕获图像并上传到 AWSs3。我想将这些图像存储在我的应用程序文件夹中。 (我在安装应用程序后创建了它)。我想将捕获的图像存储到该文件夹而不是图片文件夹。我正在使用 react-native-image-picker 来捕获图像。
我的代码是,
import ImagePicker from 'react-native-image-picker';
import RNFS from 'react-native-fs';
takePic = () => {
const options = {
quality: 1.0,
maxWidth: 100,
maxHeight: 100,
base64: true,
skipProcessing: true
}
const pictureFolder = RNFetchBlob.fs.dirs.SDCardDir+'/Pictures/Text/';
ImagePicker.launchCamera(options,(responce)=>{
this.state.testImage.push({ uri: responce.uri });
const file ={
uri : responce.uri,
name :DeviceInfo.getUniqueID()+'_'+this.props.longitude+'_'+this.props.latitude+'_'+this.state.capturedTime+'_'+this.state.schoolId+'_'+this.state.userId+'_'+this.state.SelectedClass+'_'+this.state.SelectedSection+'_'+this.state.SelectedSubject+'.jpg',
method: 'POST',
//path : pictureFolder+responce.fileName,
path : responce.path,
type : responce.type,
notification: {
enabled: true
}
}
console.log(pictureFolder);
});
(我只更新了部分代码)。我尝试使用 react-native-fs 在外部提及目标目录。但是我没有。
有人可以帮我做吗?
假设文件夹已经存在 gallery 文件夹
试试这个:
const APP_FOLDER_NAME = 'MyApp';
const pictureFolder = `${RNFS.PicturesDirectoryPath}/${APP_FOLDER_NAME}`;
ImagePicker.launchCamera(options, (response) => {
const { uri } = response;
const fileName = new Date().getTime();
RNFS.copyFile(uri, `${pictureFolder}/${fileName}`)
.then(() => RNFS.scanFile(`${albumPath}/${fileName}`));
});
这一步非常重要,可以在不重启模拟器或设备的情况下查看文件夹中的文件:
.then(() => RNFS.scanFile(`${albumPath}/${fileName}`));
我创建了一个简单的应用程序来捕获图像并上传到 AWSs3。我想将这些图像存储在我的应用程序文件夹中。 (我在安装应用程序后创建了它)。我想将捕获的图像存储到该文件夹而不是图片文件夹。我正在使用 react-native-image-picker 来捕获图像。
我的代码是,
import ImagePicker from 'react-native-image-picker';
import RNFS from 'react-native-fs';
takePic = () => {
const options = {
quality: 1.0,
maxWidth: 100,
maxHeight: 100,
base64: true,
skipProcessing: true
}
const pictureFolder = RNFetchBlob.fs.dirs.SDCardDir+'/Pictures/Text/';
ImagePicker.launchCamera(options,(responce)=>{
this.state.testImage.push({ uri: responce.uri });
const file ={
uri : responce.uri,
name :DeviceInfo.getUniqueID()+'_'+this.props.longitude+'_'+this.props.latitude+'_'+this.state.capturedTime+'_'+this.state.schoolId+'_'+this.state.userId+'_'+this.state.SelectedClass+'_'+this.state.SelectedSection+'_'+this.state.SelectedSubject+'.jpg',
method: 'POST',
//path : pictureFolder+responce.fileName,
path : responce.path,
type : responce.type,
notification: {
enabled: true
}
}
console.log(pictureFolder);
});
(我只更新了部分代码)。我尝试使用 react-native-fs 在外部提及目标目录。但是我没有。
有人可以帮我做吗?
假设文件夹已经存在 gallery 文件夹
试试这个:
const APP_FOLDER_NAME = 'MyApp'; const pictureFolder = `${RNFS.PicturesDirectoryPath}/${APP_FOLDER_NAME}`; ImagePicker.launchCamera(options, (response) => { const { uri } = response; const fileName = new Date().getTime(); RNFS.copyFile(uri, `${pictureFolder}/${fileName}`) .then(() => RNFS.scanFile(`${albumPath}/${fileName}`)); });
这一步非常重要,可以在不重启模拟器或设备的情况下查看文件夹中的文件:
.then(() => RNFS.scanFile(`${albumPath}/${fileName}`));