يعد تخزين البيانات المحلية مطلبًا أساسيًا للعديد من تطبيقات الهاتف المحمول. يوفر React Native Expo عدة طرق للتعامل مع تخزين البيانات المحلية بشكل فعال. في هذه المدونة، سنستكشف ثلاثة حلول أساسية: AsyncStorage، وSecureStore، وSQLite، ونناقش ميزاتها وحالات الاستخدام والفوائد.
AsyncStorage هو نظام تخزين بسيط وغير مشفر وغير متزامن ذي قيمة أساسية. إنه سهل الاستخدام ومناسب لتخزين كميات صغيرة من البيانات التي يجب أن تستمر عبر عمليات تشغيل التطبيق، مثل تفضيلات المستخدم والإعدادات.
لتخزين البيانات باستخدام 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 Keychain وAndroid Keystore، مما يضمن الأمان العالي.
لتخزين البيانات بشكل آمن باستخدام 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 هو محرك قاعدة بيانات 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 يتفوق في التعامل مع مجموعات البيانات المعقدة والبيانات العلائقية. سيساعدك فهم هذه الخيارات على تنفيذ استراتيجيات فعالة لتخزين البيانات في تطبيقات الهاتف المحمول الخاصة بك.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3