「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > React Native Expo でローカル データを保存する方法

React Native Expo でローカル データを保存する方法

2024 年 8 月 6 日に公開
ブラウズ:863

Methods of Storing Local Data in React Native Expo

ローカル データの保存は、多くのモバイル アプリケーションにとって基本的な要件です。 React Native Expo は、ローカル データ ストレージを効果的に処理するためのいくつかの方法を提供します。このブログでは、AsyncStorage、SecureStore、SQLite の 3 つの主要なソリューションを取り上げ、その機能、使用例、利点について説明します。

非同期ストレージ

AsyncStorage は、シンプルで暗号化されていない非同期のキーと値のストレージ システムです。使いやすく、ユーザー設定や設定など、アプリの起動後も保持する必要がある少量のデータを保存するのに適しています。

特徴:

  • 非同期操作
  • 永続ストレージ
  • シンプルな API

使用例:

  • ユーザー設定と設定の保存
  • 小さなデータのキャッシュ
  • 機密情報以外の情報の保存

例:

AsyncStorage を使用してデータを保存するには、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 は、認証トークンやユーザー資格情報などの機密データを安全に保存する方法を提供します。 iOS キーチェーンや Android キーストアなどのデバイスの安全なストレージ メカニズムを活用し、高いセキュリティを確保します。

特徴:

  • 暗号化による高いセキュリティ
  • プラットフォーム固有の安全なストレージ
  • 非同期操作

使用例:

  • 認証トークンの保存
  • ユーザー認証情報を保存しています
  • 機密性の高い構成設定を保持する

例:

SecureStore を使用してデータを安全に保存するには、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

SQLite は、大規模なデータセットや複雑なデータ関係の処理に適した強力な組み込み SQL データベース エンジンです。 SQL クエリをサポートし、堅牢なデータベース管理機能を提供します。

特徴:

  • 複雑なクエリとリレーショナル データをサポート
  • 大規模なデータセットの効率的なストレージ
  • 永続的で信頼できる

使用例:

  • 大規模なデータセットの管理
  • オフラインファースト アプリケーション
  • 高度なクエリ機能を必要とするアプリ

例:

SQLite を使用してテーブルを作成し、データを挿入するには、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)
    );
  });
};

React Native Expo で適切なローカル ストレージ ソリューションを選択するかどうかは、特定のニーズによって異なります。 AsyncStorage は単純なキーと値のストレージに最適で、SecureStore は安全なデータ ストレージに最適で、SQLite は複雑なデータセットやリレーショナル データの処理に優れています。これらのオプションを理解すると、モバイル アプリケーションに効果的なデータ ストレージ戦略を実装するのに役立ちます。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/snehasishkonger/methods-of-storing-local-data-in-react-native-expo-mc0?1 侵害がある場合は、[email protected] までご連絡ください。それを削除するには
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3