آموزش Cache در برنامه نویسی اندروید
سلام دوستان امیدوارم حالتون خوب باشد در این سری از آموزش برنامه نویسی اندروید به آموزش Cache در برنامه نویسی اندروید می پردازیم کش (cache) شاید مهمترین بخش برنامه قسمت Caching باشد چون به طور مثال همه فایل ها لازم نیست دوباره دانلود شوند از طرفی می تونید داده های خاصی رو ذخیره کنید مثلا حالت شب و روز می توانید با این کتاب خانه ذخیره کنید در ادامه با ما همراه باشید.
ابتدا شما باید کتاب خانه رو به پروژه اضافه کنید برای اینکار وارد فایل Build.gradle از نوع Top-Level شده و خط زیر را اضافه کنید.
1 | maven { url 'https://jitpack.io' } |
پروژه رو sync نکنید وارد فایل Build.gradle از نوع Module شده سپس در بخش dependencies خط زیر را قرار دهید.
1 | compile 'com.github.Guilherme-HRamos:Easy-Save:1.01' |
پروژه را sync کنید.
برای اینکه بخوایم مقادیر رو ذخیره کنیم می توانیم یک کلاس model درست کنیم مثل زیر اینطوری کارتون راحت تر میشه (در صورتی که از model استفاده کنید )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | public class UserPrefs { private String themeColor; private String soundOptionsURI; private boolean isShownTutorial; private int age; // all getter and setters below public String getThemeColor() { return themeColor; } public void setThemeColor(String themeColor) { this.themeColor = themeColor; } public String getSoundOptionsURI() { return soundOptionsURI; } public void setSoundOptionsURI(String soundOptionsURI) { this.soundOptionsURI = soundOptionsURI; } } |
به کلاس بالا getter / setter هم میگن یک مقدار set میشه و یک مقدار get (منظورت ست کردن و گرفتن داده هاست)
1 2 3 4 5 | EasySave easySave = new EasySave(this); UserPrefs userprefs = new UserPrefs(); userprefs.setThemeColor("#fff"); userprefs.setSoundOptionsURI("something like programchi.ir :D"); easySave.saveModel("chave2",userprefs ); |
و برای اینکه آن را بگیرید
1 | UserPrefs userPreferences = new EasySave(this).retrieveModel("my key", UserPrefs.class); |
دیدید که به چه سادگی میشه داده ها رو ذخیره و دریافت کرد.
برای اینکه یک ArrayList رو ذخیره کنیم می تونید مثل زیر عمل کنید.
1 2 3 4 5 | List<UserPrefs> myList= new ArrayList<>(); myList.add(user1); myList.add(user2); ... new EasySave(context).saveList("my keys", myList); |
برای گرفتن مقدار از یک ArrayList می تونید مثل زیر عمل کنید.
1 | List<UserPrefs> myList = new EasySave(this).retrieveList("my keys", User.Prefs[].class); |
این آموزش هم به پایان رسید.
موفق و موید باشید.