O armazenamento de dados locais é um requisito fundamental para muitos aplicativos móveis. React Native Expo fornece vários métodos para lidar com o armazenamento local de dados de maneira eficaz. Neste blog, exploraremos três soluções principais: AsyncStorage, SecureStore e SQLite, discutindo seus recursos, casos de uso e benefícios.
AsyncStorage é um sistema de armazenamento de valores-chave simples, não criptografado e assíncrono. É fácil de usar e adequado para armazenar pequenas quantidades de dados que precisam persistir durante a inicialização do aplicativo, como preferências e configurações do usuário.
Para armazenar dados usando AsyncStorage, você pode usar o método setItem:
import AsyncStorage from '@react-native-async-storage/async-storage'; const storeData = async (key, value) => { try { await AsyncStorage.setItem(key, value); console.log('Data stored successfully'); } catch (error) { console.error('Error storing data', error); } };
SecureStore fornece uma maneira segura de armazenar dados confidenciais, como tokens de autenticação e credenciais de usuário. Ele aproveita os mecanismos de armazenamento seguro do dispositivo, como iOS Keychain e Android Keystore, garantindo alta segurança.
Para armazenar dados com segurança usando SecureStore, você pode usar o método setItemAsync:
import * as SecureStore from 'expo-secure-store'; const storeSecureData = async (key, value) => { try { await SecureStore.setItemAsync(key, value); console.log('Data stored securely'); } catch (error) { console.error('Error storing secure data', error); } };
SQLite é um poderoso mecanismo de banco de dados SQL integrado, adequado para lidar com grandes conjuntos de dados e relacionamentos de dados complexos. Ele oferece suporte a consultas SQL e fornece recursos robustos de gerenciamento de banco de dados.
Para criar uma tabela e inserir dados usando SQLite, você pode usar o método executeSql:
import * as SQLite from 'expo-sqlite'; const db = SQLite.openDatabase('myDatabase.db'); const createTable = () => { db.transaction(tx => { tx.executeSql( 'CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY NOT NULL, name TEXT, age INTEGER);' ); }); }; const insertData = (name, age) => { db.transaction(tx => { tx.executeSql( 'INSERT INTO users (name, age) values (?, ?)', [name, age], (txObj, resultSet) => console.log('Data inserted', resultSet), (txObj, error) => console.error('Error inserting data', error) ); }); };
A escolha da solução de armazenamento local certa no React Native Expo depende de suas necessidades específicas. AsyncStorage é perfeito para armazenamento simples de valores-chave, SecureStore é ideal para armazenamento seguro de dados e SQLite é excelente no tratamento de conjuntos de dados complexos e dados relacionais. Compreender essas opções ajudará você a implementar estratégias eficazes de armazenamento de dados em seus aplicativos móveis.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3