ذخیره اطلاعات با SharedPreferences در اندروید

ذخیره اطلاعات با SharedPreferences در اندروید :

ذخیره سازی مداوم داده ها تقریباً برای کلیه برنامه های اندرویدی ضروری است.برای مثال کاربر برای خود یک عکس پروفایل انتخاب کرده اگر شما این عکس پروفایل را ذخیره نکنید کاربر با هر بار خروج و ورود مجبور به انتخاب عکس پروفایل هست به این دلیل که ذخیره نمیشه
Android یک روش مداوم برای ذخیره داده های ساده در فضای داخلی داخلی به صورت خصوصی برای هر برنامه فراهم می کرده است. در این مقاله ، ما به نحوه ذخیره و بازیابی داده ها در اندرویدی با استفاده از SharedPreferences خواهیم پرداخت. SharedPrefs برای ذخیره جفت های Key-Value در حافظه در نظر گرفته است و Android توصیه نمی کند که اطلاعات محرمانه را در تنظیمات مشترک بدون امنیت مناسب ذخیره کنید. ما همچنین به کتابخانه ای خواهیم رسید که به ما کمک می کند تا ضمن ذخیره محلی ، داده ها را رمزگذاری کنیم.

Shared Preferences :

API SharedPreferences در Android روشهای لازم را برای ذخیره و بازیابی داده های زوج کوچک با ارزش اصلی در اندرویدی فراهم می کرده است. کلاس SharedPreferences یک شیء به شما می دهد که به یک فایل محلی اشاره می کند که برای ذخیره داده ها از طریق API استفاده می شود. این پرونده ها معمولاً در زیر شاخه برنامه داده محل نصب برنامه شما ذخیره می شوند. Android از ویژگی های XML برای ذخیره این جفت های ارزش کلیدی به راحتی در این پرونده ها استفاده می کند. پرونده های SharedPreferences می تواند خصوصی باشد یا در میان برنامه های دیگر به اشتراک گذاشته شود.
 

نوشتن داده ها در SharedPreferences

نمونه ای سریع از نوشتن نام کاربری در SharedPreferences را می گیریم. ابتدا باید یک کلید SharedPreferences با یک کلید منحصر به فرد که برای ذخیره داده ها استفاده خواهیم کرد ، ایجاد کنیم. بیایید با این شماره تماس بگیریم PREFERENCE_FILE_KEY

private final String PREFERENCE_FILE_KEY = "myAppPreference";

1. ایجاد پرونده SharedPreferences

ما می توانیم با استفاده از getSharedPreferences () با هر متن در برنامه شما ، یک فایل SharedPreference جدید ایجاد کنیم یا به یک فایل برگزیده مشترک مشترک دسترسی پیدا کنیم.

Context context = getActivity();
SharedPreferences sharedPref = context.getSharedPreferences(
        PREFERENCE_FILE_KEY, Context.MODE_PRIVATE);

2. ویرایشگر SharedPreferences ایجاد کنید

برای نوشتن داده ها در تنظیمات مشترک ، باید از یک شیء از کلاس “SharedPreferences.Editor” استفاده کنیم.

Editor editor = sharedPref.edit();

3. داده های جدید را بنویسید و مرتکب شوید

ما باید اطلاعاتی را که در تنظیمات برگزیده مشترک وارد می کنیم ، یک کلید داشته باشیم. این خوب است که همه کلیدهای خود را در strings.xm یا ایجاد یک متغیر نهایی در یک کلاس استاتیک مشترک نگه دارید.

    private static final KEY_USERNAME = "prefUserNameKey"; //anything as u prefer
    // ...
    editor.putString(KEY_USERNAME, "My UserName");
    editor.commit();

خواندن داده ها از SharedPreferences

می توانیم از روش getString () در SharedPreferences برای خواندن داده ها از پرونده ترجیحی ذخیره شده استفاده کنیم.

1. پرونده SharedPreference را باز کنید

با استفاده از متد getSharedPreferences () با یک متن ، می توانیم با تهیه KEY که قبلاً ایجاد کردیم ، یک پرونده ترجیحی موجود را باز کنیم. در مورد ما ، این متغیر PREFERENCE_FILE_KEY است که کلید را در اختیار دارد.

    SharedPreferences sharedPref = getActivity().getSharedPreferences(PREFERENCE_FILE_KEY, Context.MODE_PRIVATE);

2. داده ها را با استفاده از گیرنده های SharedPreferences بخوانید

گیرنده های متعددی وجود دارد که در کلاس SharedPreferences تعریف شده اند تا داده های مناسبی را که در تنظیمات ذخیره کرده اید ، دریافت کنند. ما باید از گیرنده ای استفاده کنیم که مطابق با نوع داده داده ای است که در بخش های ذخیره شده ذخیره کردیم. در مورد ما ، از آنجا که نام کاربری یک String است ، می توانیم از متد getString () استفاده کنیم.

    String username = sharedPref.getString(KEY_USERNAME, defaultValue);

توجه داشته باشید که در صورت وجود داده هایی که ما سعی در بازیابی نداریم ، باید یک defaultValue را در گیرنده ها مشخص کنیم و از defaultValue بعنوان یک FallBack استفاده می شود.

رمزگذاری داده های SharedPreference با استفاده از HAWK

Hawk یک کتابخانه مفید برای اندرویدی است که مشابه SharedPreferences کار می کند اما کاملاً شبیه آن نیست. هاوک می تواند داده های شما را قبل از انتقال به فضای محلی رمزگذاری کند ، بنابراین از دسترسی دیگران به داده ها جلوگیری می کند. این می تواند برای ذخیره اطلاعات محرمانه در ذخیره سازی محلی با رمزگذاری آن استفاده شود. برای اطلاعات بیشتر در مورد این می توانید به مخزن رسمی HAWK مراجعه کنید.

1. کتابخانه هاوک را به build.gradle برنامه خود اضافه کنید

implementation "com.orhanobut:hawk:2.0.1"

2. خواندن و نوشتن داده ها با استفاده از هاوک

    // To save data
    Hawk.put(key, T);
    // To read data
    T value = Hawk.get(key);
    // To delete a stored data
    Hawk.delete(key);
    // Check if a key exists
    Hawk.contains(key);
    // Count all the data stored
    Hawk.count();
    // Delete all the stored data
    Hawk.deleteAll();

اینم از آموزش ذخیره اطلاعات با SharedPreferences در اندروید

مطلب مفیدی برای شما بود ؟ پس به اشتراک بگذارید برای دوستانتان

codesrcReza

109 مطلب منتشر شده

درباره این مطلب نظر دهید !