Я новичок в реакции на родную.Я занимаюсь разработкой приложения, в котором я делаю фотографии с использованием реагирования на родные изображения и загружаю их на сервер AWS.Я могу сделать снимок и загрузить его в AWS s3. В настоящее время эти изображения хранятся в галерее.Но я хочу сохранить их только в моем приложении (его не следует хранить в галерее), а затем загрузить в AWS s3.Как я могу это сделать.Затем я могу загрузить снятые фотографии в AWS s3 только при наличии сетевого подключения.Поэтому я хочу хранить внутри приложения, и как только сетевое соединение вернется, они должны быть загружены в AWS s3 (как в приложении).Как я могу этого добиться.(Я не загружал код стилей здесь)
Мой код,
import React, {Component} from 'react';
import {Platform, StyleSheet,Alert, Text,TouchableOpacity,
View,Picker,Animated,Easing,Image} from 'react-native';
import ImagePicker from 'react-native-image-picker';
import { RNS3 } from 'react-native-aws3';
export default class SecondScreen extends Component<Props> {
constructor(props) {
super(props);
this.state = {
file :'',
//declare array to store all taken images
saveImages : []
}
}
takePic(){
ImagePicker.launchCamera({},(responce)=>{
const file ={
uri : responce.uri,
name :responce.fileName,,
method: 'POST',
path : responce.path,
type : responce.type,
notification: {
enabled: true
}
}
this.state.saveImages.push(file);
})
}
_upload=(saveImages)=>{
const config ={
keyPrefix :'uploads/',
bucket : 's3merahkee',
region :'us-east-2',
accessKey:'***',
secretKey :'***',
successActionStatus :201
}
this.state.saveImages.map((image) => {
RNS3.put(image,config)
.then((responce) => {
console.log(saveImages);
});
});
}
render() {
return (
<View style={styles.container}>
<View style={styles.Camera}>
<TouchableOpacity onPress={this.takePic.bind(this)}>
<Text>Take Picture</Text>
</TouchableOpacity>
</View>
<View style={styles.Send}>
<TouchableOpacity onPress={() => this._upload()}>
<Text>Send</Text>
</TouchableOpacity>
</View>
</View>
);
}
}