HOWTO · React Native
React Native でのストレージ
このチュートリアルでは、React Native で利用可能なストレージについて説明します。
このページの内容
ストレージは、デスクトップ、Web、またはモバイル アプリケーションにとって不可欠です。 アプリケーションに適したストレージ システムを選択することは、高性能で安全なアプリケーションを作成するための主要な要件です。
この記事では、React-Native を使用してアプリケーションを開発するときに使用できるストレージ デバイスについて説明します。
React-Native アプリケーションで最も使用されているストレージ システム
以下に、React-Native アプリケーションの開発時に使用される最も一般的なストレージ システムの一部を示します。 それらを見てみましょう。
-
このストレージは、アプリでグローバルにアクセスできます。 これは、暗号化されていない永続的なキー値の非同期ストレージ システムです。
IOS ベースのシステムの場合、2つの異なる方法で値を保存します。 小さな値はシリアライズされたディクショナリに格納され、大きな値は別のファイルを使用します。
一方、Android では、このストレージ システムは可用性に基づいて SQLite または RocksDB のいずれかを使用します。
Android では、このストレージは 6MB のみをサポートし、IOS では無制限の量のデータをサポートします。 クロスプラットフォーム アプリを開発する場合、6 MB が固定の制限です。
-
安全な保管
暗号化されたデータを保存するために、安全なストレージを使用します。 React-Native のようなフレームワークには、パスワード、メモ、証明書、ID、キーなどの機密データを保存するための特別なストレージ システムが含まれていません。
IOS ベースのシステムでは、キーチェーン サービスにより、アプリの機密データを少量保存できます。
Android では、アプリの機密データを保存するための安全なストレージとして共有設定が使用されます。 Android には、暗号化キーを格納するために使用される Android Keystore も含まれています。
Android キーストアを使用するために、React-Native で利用できるパッケージは
react-native-sensitive-infoです。 -
このストレージ システムは、MMAP を使用してメモリとファイルを同期します。 これは、小型のモバイル キー値ストレージのフレームワークであり、効率的です。
-
小型、高速、高い信頼性、効率性、および自己完結型の機能により、あらゆるネイティブ アプリケーションで最も人気のあるストレージ システムの 1つです。 このストレージは、主にデータベースの格納に使用されます。
すべての携帯電話システムには、このストレージ システムが組み込まれています。 このストレージのファイル形式は安定しており、下位互換性があり、クロスプラットフォームです。
-
Firebase は主にデータベースの保存に使用されますが、画像、動画、音声、その他のシステム生成ファイルやコンテンツを保存するためのクラウド サービスも提供します。 シンプルで強力、かつコスト効率に優れています。
-
電話やその他のデバイスで直接実行されるデータベース ストレージ システムを探している場合は、Realm が最適です。 このストレージ システムでは、データはオブジェクトとして格納され、コードによってクエリ可能です。
生の SQLite よりも高速であり、SQLite および Key-Value ストアの代替として使用できます。
上記で最も使用され、人気のあるストレージ システムについて説明しましたが、ニーズに基づいて最適なものを選択できます。 ただし、アプリケーションに最適なストレージ システムの選択は、アプリケーション カテゴリ、パフォーマンス要件、コストなどの重要な要因に基づいています。
したがって、アプリケーションに最適なストレージ システムを選択するには、まず要件を理解する必要があります。 そうしないと、アプリケーションのパフォーマンスに影響を与える可能性があります。