Файлы System/bin Android 12. Справочник.


  Все     Команда     Скрипт     Служба     Приложение  

bmgr
Оболочка для Backup Manager

Тип файла: приложение
  Eng  

usage: bmgr [--user <userId>]
@@[backup|


restore|
list|
transport|
run]

bmgr backup PACKAGE - ПАКЕТ резервного копирования
bmgr enable BOOL - включить BOOL
bmgr enabled
bmgr list transports [-c] - список транспортов
bmgr list sets
bmgr transport WHICH|-c WHICH_COMPONENT
bmgr restore TOKEN
bmgr restore TOKEN PACKAGE...
bmgr run
bmgr wipe TRANSPORT PACKAGE
bmgr fullbackup PACKAGE...
bmgr backupnow [--monitor|--monitor-verbose] --all|PACKAGE...
bmgr cancel backups - отменить резервное копирование
bmgr init TRANSPORT...
bmgr activate BOOL - активировать BOOL
bmgr activated
bmgr autorestore BOOL - автовосстановление BOOL

Параметр --user указывает пользователя, для которого выполняется операция.
Это должен быть первый аргумент перед операцией.
Значение по умолчанию — 0, означает, что является системным пользователем.


КОМАНДЫ

'backup' - планирует резервное копирование указанного пакета.
Обратите внимание, что проход резервного копирования фактически
не будет выполняться, если пакет на самом деле не имеет измененных
данных для хранения.


'enable' включает или отключает весь механизм резервного копирования.
Если аргумент «истина», он будет включен, в противном случае он будет
неполноценный. Если этот параметр отключен, операции резервного копирования
или восстановления не будут выполняться.


'enabled' сообщает о текущем включенном/отключенном состоянии
резервный механизм.


'list transports' сообщает имена резервных транспортов, к которым
в настоящее время привязан BackupManager.
Эти имена можно передавать в качестве аргументов командам «транспорт» и «стирание».
Текущий активный транспорт обозначается символом '*'.
Если используется флаг -c, отображаются все доступные транспортные
компоненты на устройстве.
Их можно использовать с компонентным вариантом команды «транспорт».


'list sets' сообщает токен и имя каждого набора восстановления.
доступны для устройства через текущий активный транспорт.


'transport' назначает указанный транспорт текущим.
активный. Этот параметр сохраняется при перезагрузке.
Если указан флаг -c, следующая строка рассматривается как имя компонента.


'restore', если дается только токен восстановления,
инициирует операцию полного восстановления системы из текущего
активного транспорта. Она доставляет набор восстановления,
указанный аргументом TOKEN, каждому приложению, которое внесло данные
в этот набор восстановления.


'restore' инициирует операцию полного восстановления системы из текущего
активного транспорта, если дается только токен восстановления.
Она доставляет набор восстановления, указанный аргументом TOKEN,
каждому приложению, которое внесло данные в этот набор восстановления.

Команда 'restore', получившая токен и одно или несколько имен пакетов,
инициирует операцию восстановления только тех заданных пакетов из набора
восстановления, который указан аргументом TOKEN.
По сути, это то же самое, что и операция «восстановление», предоставляющая
только токен, но применяющая фильтр к набору восстанавливаемых приложений.


'run' немедленно инициирует любую запланированную операцию
резервного копирования, без обычного периода ожидания для объединения
изменений данных.


'wipe' приводит к удалению всех резервных копий данных для данного пакета
из хранилища данного транспорта. Следующая операция резервного копирования,
которую выполняет данное приложение, перезапишет весь его набор данных.
Используемые здесь транспортные имена — это те, о которых сообщает
'list transports'.


'fullbackup' вызывает полное резервное копирование потока данных для одного
или нескольких пакетов. Данные отправляются через текущий активный транспорт.


'backupnow' запускает немедленное резервное копирование одного или
нескольких пакетов.

  • --all флаг запускает резервное копирование для всех подходящих пакетов.

  • --monitor флаг печатает события монитора.

  • --monitor-verbose флаг выводит события монитора со всеми ключами.

    Для каждого пакета будет выполняться резервное копирование ключей/значений или
    полное резервное копирование данных в зависимости от объявлений манифеста пакета.
    Данные отправляются через текущий активный транспорт.


    'cancel backups' отменяет все запущенные резервные копии.


    'init' инициализирует указанные транспорты, стирая все данные
    из их резервных хранилищ данных.


    'activate' активирует или деактивирует службу резервного копирования.
    Если аргумент «истина», он будет активирован, в противном случае он будет
    деактивирован. При деактивации служба не будет работать и не будет
    операции можно выполнять до активации.


    'activated' сообщает о текущем активированном/деактивированном
    состояние резервного механизма.


    'autorestore' включает или отключает автоматическое восстановление при
    установке нового пакета.


    +++++++++
    ВНИМАНИЕ !
    Команда bmgr не выполняется в консоли U-Boot,
    требуется подключение по ADB

    Пример:

    connected to 192.168.0.132:5555
    List of devices attached
    192.168.0.132:5555 device


    C:\adb>adb shell
    raven:/ $ bmgr enabled
    Backup Manager currently disabled
    raven:/ $ bmgr list transport
    raven:/ $ bmgr enable true
    Backup Manager now enabled
    raven:/ $ bmgr enabled
    Backup Manager currently enabled
    raven:/ $ bmgr list transport
    raven:/ $ bmgr list sets
    1 : Local disk image
    raven:/ $ bmgr activated
    Backup Manager currently activated

       

    Комментарии
    bmgr — это инструмент-оболочка, который можно использовать для взаимодействия
    с Backup Manager на устройствах Android версии 2.2 (API уровня 8) или выше.
    Инструмент предоставляет команды для запуска операций резервного копирования
    и восстановления, поэтому вам не нужно повторно стирать данные или предпринимать
    аналогичные навязчивые действия для проверки функций резервного копирования вашего приложения.

    Инструмент bmgr поддерживает как автоматическое резервное копирование,
    так и резервное копирование ключей/значений.

    Примечание: bmgr restore не работает для зашифрованных резервных копий .

    Вы запускаете команды bmgr на устройстве через оболочку adb,
    а затем отслеживаете вывод команд с помощью logcat.
    Чтобы просмотреть список и описание доступных команд, запустите инструмент bmgr без аргументов.

    Сведения о запуске операций резервного копирования и восстановления см.
    в разделе Тестирование резервного копирования и восстановления .

    Информацию о добавлении поддержки резервного копирования в ваше приложение см.
    в разделе Резервное копирование данных.

    ---------------------------
    Резервное копирование данных

    bmgr — это инструмент оболочки, который вы можете использовать для взаимодействия
    с Backup Manager на устройствах Android, поддерживающих уровень API 8 или выше.
    Он предоставляет команды для запуска операций резервного копирования и восстановления,
    поэтому вам не нужно повторно стирать данные или предпринимать аналогичные навязчивые
    действия для тестирования агента резервного копирования вашего приложения.
    Доступ к этим командам осуществляется через оболочку adb.

    ОПЕРАЦИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ

    Обычно ваше приложение должно уведомлять Backup Manager об изменении своих данных
    с помощью dataChanged().
    Менеджер резервного копирования вызовет реализацию onBackup() вашего агента резервного копирования в будущем.
    Однако вместо вызова dataChanged() вы можете вызвать запрос на резервное копирование
    из командной строки, выполнив команду резервного копирования bmgr:

    bmgr backup <package>

    <package> — это официальное имя пакета приложения, резервное копирование которого вы хотите запланировать.
    Когда вы выполняете эту команду резервного копирования, агент резервного копирования
    вашего приложения будет вызван для выполнения операции резервного копирования
    в будущем (через ваш метод onBackup()), хотя нет никакой гарантии, когда это произойдет.
    Однако вы можете принудительно запустить все ожидающие операции резервного копирования
    с помощью команды запуска bmgr:

    bmgr run

    Это приводит к немедленному выполнению прохода резервного копирования, вызывая агенты
    резервного копирования всех приложений, которые ранее вызывали dataChanged()
    с момента последней операции резервного копирования, а также любые приложения,
    резервное копирование которых было запланировано вручную с помощью резервного копирования bmgr.

    ОПЕРАЦИЯ ВОССТАНОВЛЕНИЯ

    В отличие от операций резервного копирования, которые объединяются в пакеты
    и запускаются время от времени, операции восстановления выполняются немедленно.
    В настоящее время Backup Manager поддерживает два вида операций восстановления.

    Первый тип восстанавливает все устройство с данными, для которых была сделана резервная копия.
    Обычно это выполняется только при первой подготовке устройства (для репликации настроек
    и другого сохраненного состояния с предыдущего устройства пользователя) и является операцией,
    которую может выполнять только система.

    Второй тип операции восстановления восстанавливает отдельное приложение в его
    «активный» набор данных; то есть приложение откажется от своих текущих данных
    и вернется к последним известным исправным данным, которые хранятся в текущем образе резервной копии.
    Вы можете вызвать эту вторую операцию восстановления с помощью метода requestRestore().
    Затем диспетчер резервного копирования вызовет реализацию onRestore() вашего агента резервного копирования.

    Во время тестирования вашего приложения вы можете немедленно вызвать операцию
    восстановления (в обход метода requestRestore()) для вашего приложения с помощью
    команды восстановления bmgr:

    bmgr restore <package>

    <package> — это формальное имя пакета в стиле Java для приложения,
    участвующего в механизме резервного копирования/восстановления, которое вы хотите восстановить.
    Менеджер резервного копирования немедленно создаст экземпляр агента резервного
    копирования приложения и вызовет его для восстановления.
    Это произойдет, даже если ваше приложение в данный момент не запущено.


    СТИРАНИЕ ДАННЫХ

    Данные для одного приложения могут быть удалены из активного набора данных по требованию.
    Это очень полезно при разработке агента резервного копирования на тот случай,
    если ошибки приведут к записи поврежденных данных или сохраненной информации о состоянии.
    Вы можете стереть данные приложения с помощью команды bmgr wipe:

    bmgr wipe <package>

    <package> — это официальное имя пакета приложения, данные которого вы хотите стереть.

    Следующая операция резервного копирования, которую обрабатывает агент приложения,
    будет выглядеть так, как будто приложение никогда раньше не создавало резервных копий.

    ВКЛЮЧЕНИЕ И ОТКЛЮЧЕНИЕ РЕЗЕРВНОГО КОПИРОВАНИЯ

    Проверить, работает ли вообще Backup Manager, можно с помощью команды:

    bmgr enable

    Это может быть полезно, если агент резервного копирования вашего приложения никогда
    не вызывается для резервного копирования, чтобы проверить, считает ли операционная система,
    что она вообще должна выполнять такие операции.

    Вы также можете напрямую отключить или включить диспетчер резервного
    копирования с помощью этой команды:

    bmgr enable <boolean>

    <boolean> может быть либо истинным, либо ложным.
    Это эквивалентно отключению или включению резервного копирования в основном
    пользовательском интерфейсе настроек устройства.

    Предупреждение!
    Когда резервное копирование отключено, текущий транспорт резервного копирования явно
    удалит весь активный набор данных из внутреннего хранилища.
    Это делается для того, чтобы, когда пользователь говорит,
    что не хочет создавать резервные копии своих данных, диспетчер резервного копирования
    уважает это желание.

    Никакие дальнейшие данные не будут сохранены с устройства, и никакие операции
    восстановления не будут возможны, если не будет повторно включен диспетчер
    резервного копирования (либо через настройки, либо с помощью приведенной выше команды bmgr).