مشخصات مقاله
-
2964
-
0.0
-
5608
-
0
-
0
آموزش گرفتن فایل پشتیبانی از داده ها در اندروید
آموزش data backup در android, گرفتن فایل پشتیبان داده ها در اندروید android
این فصل شما را با عملکرد رابط برنامه سازی کاربردی (گرفتن فایل پشتیبانی) data backup برای احیا و بازیابی داده های پیکربندی اپلیکیشن آشنا می سازد .
فهرست محتوا
1. گرفتن فایل پشتیبانی یا backup از داده ها در اندروید
- هدف از گرفتن فایل پشتیبانی
- Backup گرفتن از shared preferences و فایلها
2. تمرین : استفاده از فایل پشتیبانی که از تنظیمات برنامه ی کاربردی گرفته شده باشد
- پیاده سازی پروژه
- فعال سازی فرایند backup و احیا فایل ها
گرفتن فایل پشتیبانی یا backup از داده ها در اندروید
هدف از گرفتن فایل پشتیبانی
backup service سیستم اندروید به شما امکان می دهد داده های ماندگار اپلیکیشن اندروید را در منبع ذخیره سازی راه دور cloud کپی کنید . این کار برای شما این قابلیت را فراهم می کند که داده های اپلیکیشن و تنظیمات کلی را در صورتی که کاربر دستگاه اندروید خود را تغییر داد, برنامه را پاک کرده و مجدداً نصب کرد و یا آن را به حالت کارخانه (reset-factory) بازگرداند, احیا کند .
سرویس backup لزوماً در کلیه ی دستگاه های اندروید دردسترس نمی باشد, همچنین محل ذخیره سازی یا حافظه ی cloud ممکن است توسط تولید کننده ی دستگاه مورد نظر سفارشی و اختصاصی تنظیم شده باشد, از این رو گروه برنامه نویسان و توسعه دهندگان سیستم اندروید هیچ تضمینی درباره ی امنیت صد درصد اطلاعات ذخیره شده نمی دهد .
در صورت عدم وجود این سرویس در دستگاه اندروید, سرویس backup صدا زده نمی شود . بهمین دلیل توصیه می شود این سرویس را پیاده سازی کرده, سپس آن را در هر دستگاهی که مایلید اجرا و راه اندازی کنید .
جهت استفاده از سرویس مزبور باید برای پکیج برنامه ی کاربردی خود تحت url زیر رجیستر کنید :
https://developer.android.com/google/backup/signup.html
این صفحه ی وب به شما اجازه می دهد ویژه ی پکیج اپلیکیشن خود یکbackup key دریافت کنید.
Backup از shared preferences و فایلها
جهت ذخیره سازی و احیا اطلاعات باید کلاس BackupAgent را به ارث ببرید .
آسان ترین روش برای پیاده سازی و استفاده از قابلیت backup, بکاربردن SharedPreferencesBackupHelper برای shared preferences و FileBackupHelper جهت تهیه ی backup از فایل های موجود در حافظه ی داخلی سیستم است . هر دو کلاس کمک رسانی (helper class) نام برده به صورت خودکار فایل های ثبت یا رجیستر شده را ذخیره سازی و احیإ می کند .
تمرین : استفاده از فایل پشتیبانی که از تنظیمات برنامه ی کاربردی گرفته شده باشد
پیاده سازی پروژه
برنامه ی کاربردی که ذیل مشاهده می کنید از پکیج سطح بالای com.vogella.android.databackup استفاده می کند .
Backup و registration key هر دو داخل فایل AndroidManifest.xml درج شدند مشابه کد لیست زیر:
backup agent مربوطه را می توان مطابق لیستینگ زیر پیاده سازی کرد .
package com.vogella.android.databackup;
import android.app.backup.BackupAgentHelper;
import android.app.backup.SharedPreferencesBackupHelper;
public class MyBackupAgent extends BackupAgentHelper {
// The name of the SharedPreferences file
static final String PREFS = "myprefs";
// A key to uniquely identify the set of backup data
static final String PREFS_BACKUP_KEY = "myprefs";
@Override
public void onCreate() {
SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
addHelper(PREFS_BACKUP_KEY, helper);
}
}
فعال سازی فرایند backup و احیا فایل ها
backup manager پیاده سازی شده به صورت خوکار و بدون نیاز به تعامل با کاربر فعالیت خود را آغاز کرده و shared preferences رجیستر شده مرتبط با کاربر را ذخیره و احیإ می کند . کافی است shared preference را تحت اسم فایلی که برنامه ی کاربردی خود را با آن رجیستر کردید, اصلاح کرده و ذخیره کنید.
اگر می خواهید عملیات ذخیره سازی و احیإ را از طریق adb shell command (دستور پوسته adb) تست کنید, می توانید از دستورات زیر کمک بگیرید
# Trigger a backup, usage: # adb shell bmgr backup# schedule backup adb shell bmgr backup com.vogella.android.databackup # ensure scheduled backup run adb shell bmgr run # to restore you backup use bmgr restore adb shell bmgr restore com.vogella.android.databackup