Android Хмарний бекап даних за допомогою Android Backup Service

Google пропонує спеціальний механізм збереження та відновлення даних за допомогою хмарних технологій. Не всі пристрої можуть підтримувати цю технологію. При цьому ваш додаток буде працювати без помилок і користувач не помітить помилок, але дані не зберігатимуться і, відповідно, відновлюватимуться.

Сам я не тестував цей спосіб у бойових умовах, тому помістив статтю у розділ теорії. Сам приклад дуже простий.

Для початку слід зареєструвати вашу програму на сторінці Backup Service. Вам потрібно погодитися з умовами використання та ввести ім'я пакета вашої програми. Натомість вам видадуть ключ, який потрібно помістити в секціюapplicationманіфесту.

А для самого тегаapplicationв атрибутіbackupAgentпотрібно вказати ім'я класу, який ми зараз створимо.

АтрибутrestoreAnyVersionне є обов'язковим.

Далі створюється новий клас на основіBackupAgentHelper, в якому ви вказуєте, які дані слід зберегти - базу даних, налаштування.

Залишилося десь у вашій активності визначити місце для виклику методу, коли змінюються дані.

Тепер залишилося запустити програму, зробити якісь дії, що призводять до створення бекапу, видалити програму, встановити її знову і переконатися, що дані відновилися. При цьому ми лише просимо операцію на бекап. Самостійно проводити відновлення даних ми можемо. Сервіс автоматично визначає момент, коли потрібно відновити дані, наприклад, при перевстановленні програми або інсталяції програми на новому пристрої.

Крім допоміжного класуBackupAgentHelperможна використовувати класBackupAgent, якщо вам потрібні додаткові можливості.

У документації є окрема сторінка з цієї теми - Data Backup Android Developers