Вопрос

Я просматриваю файлы AndroidManifest и вижу записи для android:backupAgent и в соответствии с Документацией android:backupAgent является

Имя класса, реализующего BackupAgent для управления резервным копированием и восстановлением настроек приложения во внешнем хранилище.

Но я не могу найти BackupAgent интерфейс или любая другая документация.Кто-нибудь может указать мне правильное направление?

Это было полезно?

Решение

API BackupAgent еще не утвержден, поэтому это скрытый класс. Вы можете проверить это на Android git, где есть этот комментарий:

/**
 * 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 в исходном коде, он "является центральным интерфейсом между приложением и механизмом резервного копирования настроек Android". Он имеет абстрактный onBackup() и onRestore() методы.

Существует также BackupManager.Javadoc говорит "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 переменная-член - это простой способ отключить функцию резервного копирования.Я предполагаю, что это отключено в производственных сборках Android.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top