
הטקסט המלא של הדקות הראשונות בהרצאה «Saving Data on the Device» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אנחנו מגיעים לכמה נושאים שבהם אנחנו הולכים לשמור מידע על המכשיר עצמו. בואו נראה כמה נתונים בנוגע לזה. קודם כל, כל פעם שהשתמשנו עם מידע, שמרנו אותו בתוך משתנים, בתוך אובייקטים או בתוך קולקשנים.
המידע הזה נשמר באזור זיכרון שנקרא ראם, Random Access Memory. האזור הזה הוא מאוד מהיר לצורך כתיבה ולצורך קריאה, אבל ברגע שהאפליקציה נסגרת, כל מה ששמרנו נעלם.
אם אנחנו מריצים את האפליקציה עוד פעם אנחנו לא יכולים לשחזר את המידע הזה. איך אנחנו כן יכולים לשמור את המידע כך שהוא יישמר מעבר לסגירת האפליקציה? בדיסק של המכשיר.
הדיסק של המכשיר מכיל פולדרים וקבצים, תיקיות וקבצים. יכול לאגור אפליקציות, תמונות, סאונדס, קבצי סאונד, קבצי וידאו, מסדי נתונים ועוד כל מיני דברים.
הטיבה והקריאה הם יותר איטיים מאשר הרם אבל המידע נשמר אפילו שהאפליקציה נסגרת ואז כאשר פותחים את האפליקציה אפשר לשחזר את המידע ולהמשיך לעבוד איתו איזה סוגי מידע אנחנו יכולים לשמור בתוך הדיסק דבר ראשון יש לנו משהו שנקרא shared preferences תכף נראה מה זה אומר אנחנו יכולים לשמור קבצי טקסט אנחנו יכולים לשמור קבצים בינאריים
ואנחנו יכולים לשמור מסד נתונים. מה זה Shared Preferences? Shared Preferences אלו Key Value Pairs, כלומר זוגות-זוגות שכל זוג מכיל מפתח ואת הפריט עצמו.
משמש עבור שמירת העדפות של המשתמש עבור האפליקציה שלנו, מה שנקרא Preferences. המידע נשמר בצורה לא מוצפנת כמידע XMLי במכשיר עצמו.
כל פריט שאנחנו שומרים אפשר לשחזר אותו על ידי המפתח שלו. קבצי טקסט יכולים לשמור כל מידע בכל פורמט טקסטואלי. דוגמאות יכולות להיות קובץ טקסטואלי שאנחנו מחליטים מה בדיוק המידע שאנחנו רוצים לשמור בפורמט שלנו.
קבצי XML מכילים מידע בתגיות. קבצי JSON מכילים מידע בפורמט JSON שמיועד יותר לשליחה לאתר מרוחק או לקבלה מאתר מרוחק, קבצי CSV קיצור של Comma Separated Values כלומר מידע מופרד עם פסיקים, או כל פורמט טקסטואלי אחר שאנחנו רוצים.
קבצים בינאריים יכולים להכיל כל מידע בינארי שאנחנו רוצים. דוגמאות יכולות להיות קבצים עם פורמט בינארי משלנו, תמונות, סאונד, או כל קובץ בינארי אחר.
דאטאבייסים הדאטאבייס שקיים בתוך מכשיר אנדרואיד נקרא sqlite database זה הסוג שלו. הדאטאבייס הזה נחשב relational database כלומר המידע שנמצא בו קיים בתוך טבלאות.
ניתן לבצע פעולות עליו על ידי שפת sql שזה יתרון. אנחנו יכולים דרך שפת sql להכניס מידע לקרוא מידע לעשות פילטרינג על מידע וניתן לבצע עליו משהו שנקרא קרוד, זאת אומרת קריאייט, ריד, אפטייט ודיליט.
ניתן לגשת למידע בצורה אסינכרונית בבת אחת ממספר מקומות, מבלי לנהל משהו שנקרא לוקינג, כלומר אם היינו עובדים עם קבצים לא היינו