Browse Source

inserido um novo tipo de secure store agora nativo do react native

dev-home
Matheo Bonucia 3 months ago
parent
commit
bad33e85e3
  1. 10
      android/app/build.gradle
  2. 51
      asset/context/AuthContext.js
  3. 10
      package-lock.json
  4. 1
      package.json

10
android/app/build.gradle

@ -83,6 +83,14 @@ android {
versionName "1.0"
}
signingConfigs {
release {
if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
storeFile file(MYAPP_UPLOAD_STORE_FILE)
storePassword MYAPP_UPLOAD_STORE_PASSWORD
keyAlias MYAPP_UPLOAD_KEY_ALIAS
keyPassword MYAPP_UPLOAD_KEY_PASSWORD
}
}
debug {
storeFile file('debug.keystore')
storePassword 'android'
@ -97,7 +105,7 @@ android {
release {
// Caution! In production, you need to generate your own keystore file.
// see https://reactnative.dev/docs/signed-apk-android.
signingConfig signingConfigs.debug
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}

51
asset/context/AuthContext.js

@ -1,5 +1,5 @@
import React, {createContext, useState, useEffect, useMemo} from 'react';
// import * as SecureStore from 'expo-secure-store';
import EncryptedStorage from 'react-native-encrypted-storage';
export const AuthContext = createContext();
@ -13,31 +13,31 @@ export const AuthProvider = ({children}) => {
senha: '',
});
// const save = async (key, value) => {
// try {
// await SecureStore.setItemAsync(key, JSON.stringify(value));
// console.log(`Dados salvos com sucesso para a chave ${key}`);
// } catch (error) {
// console.error('Erro ao salvar os dados:', error);
// }
// };
const save = async (key, value) => {
try {
await EncryptedStorage.setItem(key, JSON.stringify(value));
console.log(`Dados salvos com sucesso para a chave ${key}`);
} catch (error) {
console.error('Erro ao salvar os dados:', error);
}
};
// useEffect(() => {
// const fetchData = async () => {
// try {
// const savedAuthData = await SecureStore.getItemAsync('authData');
// if (savedAuthData) {
// setAuthData(JSON.parse(savedAuthData));
// //Caso tenha dados salvos ele ja tenta logar
// setSendAuth(prevState => !prevState);
// }
// } catch (error) {
// console.error('Erro ao recuperar os dados salvos:', error);
// }
// };
useEffect(() => {
const fetchData = async () => {
try {
const savedAuthData = await EncryptedStorage.getItem('authData');
if (savedAuthData) {
setAuthData(JSON.parse(savedAuthData));
// Caso tenha dados salvos ele já tenta logar
setSendAuth(prevState => !prevState);
}
} catch (error) {
console.error('Erro ao recuperar os dados salvos:', error);
}
};
// fetchData();
// }, []);
fetchData();
}, []);
const handleInputChange = (field, value) => {
setAuthData(prevAuthData => ({
@ -45,8 +45,9 @@ export const AuthProvider = ({children}) => {
[field]: value,
}));
};
const handleSubmit = () => {
// save('authData', authData);
save('authData', authData);
setSendAuth(prevState => !prevState);
};

10
package-lock.json generated

@ -16,6 +16,7 @@
"react": "^18.2.0",
"react-native": "^0.73.0",
"react-native-animatable": "^1.4.0",
"react-native-encrypted-storage": "^4.0.3",
"react-native-gesture-handler": "^2.17.1",
"react-native-incall-manager": "^4.2.0",
"react-native-jssip": "^3.7.6",
@ -15844,6 +15845,15 @@
"prop-types": "^15.8.1"
}
},
"node_modules/react-native-encrypted-storage": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/react-native-encrypted-storage/-/react-native-encrypted-storage-4.0.3.tgz",
"integrity": "sha512-0pJA4Aj2S1PIJEbU7pN/Qvf7JIJx3hFywx+i+bLHtgK0/6Zryf1V2xVsWcrD50dfiu3jY1eN2gesQ5osGxE7jA==",
"peerDependencies": {
"react": "*",
"react-native": "*"
}
},
"node_modules/react-native-gesture-handler": {
"version": "2.17.1",
"resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.17.1.tgz",

1
package.json

@ -18,6 +18,7 @@
"react": "^18.2.0",
"react-native": "^0.73.0",
"react-native-animatable": "^1.4.0",
"react-native-encrypted-storage": "^4.0.3",
"react-native-gesture-handler": "^2.17.1",
"react-native-incall-manager": "^4.2.0",
"react-native-jssip": "^3.7.6",

Loading…
Cancel
Save