كيف يعمل النسخ الاحتياطي؟
-
19-09-2019 - |
سؤال
أنا أبحث في ملفات AndroidManifest وأرى إدخالات ل android:backupAgent
ووفقا للوثائق android:backupAgent
يكون
اسم الفئة المنفذة النسخونة احتياطية لإدارة النسخ الاحتياطي واستعادة إعدادات التطبيق إلى التخزين الخارجي.
لكنني لا أستطيع العثور على BackupAgent
واجهة أو أي وثائق أخرى. هل يستطيع احد توجيهي الي الوجهة الصحيحة؟
المحلول
لا يتم تثبيت API BackupAgent بعد، لذلك فهي فئة مخفية. يمكنك التحقق من ذلك على جيت أندرويد, ، حيث يوجد هذا التعليق:
/**
* This is the central interface between an application and Android's
* settings backup mechanism.
*
* @hide pending API solidification
*/
نصائح أخرى
كل ما يمكنني تقديمه هو شفرة المصدر ل android.app.BackupAgent
و ال شفرة المصدر ل android.backup.BackupManager
.
BackupAgent
هو فئة مجردة ووفقا ل Javadoc في المصدر "هي الواجهة المركزية بين آلية النسخ الاحتياطي لآلية النسخ الاحتياطي للأندرويد." لديها مجردة onBackup()
و onRestore()
طرق.
يوجد ايضا BackupManager
. وبعد يقول جافادوك "BackupManager
هي الواجهة لخدمة النسخ الاحتياطي للنظام. التطبيقات ببساطة إنشاء مثيل واحد، ثم استخدم هذا المثيل للتواصل مع البنية التحتية النسخ الاحتياطي. " dataChanged()
طريقة للاتصال بجدولة نسخة احتياطية و beginRestoreSession()
طريقة لبدء استعادة.
الآن، الأشياء المثيرة للاهتمام في الكود ل BackupManager
نكون:
*
* @hide pending API solidification
*/
و:
/** @hide TODO: REMOVE THIS */
public static final boolean EVEN_THINK_ABOUT_DOING_RESTORE = true;
لذلك يبدو أن هذا لا يزال عمل قيد التقدم و EVEN_THINK_ABOUT_DOING_RESTORE
متغير الأعضاء هو طريقة سهلة لتعطيل وظائف النسخ الاحتياطي. تخميني هو أنه تم تعطيله في إنتاج أندرويد يبني.