Module: DroidAdbs::BackupUtils

Defined in:
lib/droid_adbs/commons/backup.rb

Class Method Summary collapse

Class Method Details

.available_backup?Boolean

Return true if API Level against target device is over 23

Returns:

  • (Boolean)

    Return true if API Level against target device is over 23



45
46
47
# File 'lib/droid_adbs/commons/backup.rb', line 45

def available_backup?
  ::DroidAdbs::Devices.device_build_version_sdk.to_i >= 23
end

.clear_backup(transport, package) ⇒ String

Returns message from adb command and puts message.

Parameters:

  • transport (String)
  • package (String)

    A package name you would like to backup

Returns:

  • (String)

    message from adb command and puts message



38
39
40
41
42
# File 'lib/droid_adbs/commons/backup.rb', line 38

def clear_backup(transport, package)
  result = `#{::DroidAdbs.shell} bmgr wipe #{transport} #{package}`.strip
  puts "You can also clear the backup data and associated metadata wither by turning backup off and on in Settings > Backup."
  result
end

.enable_backup_logsString

Returns message from adb command.

Returns:

  • (String)

    message from adb command

Raises:

  • RuntimeError because backup available over SDK 23



9
10
11
12
# File 'lib/droid_adbs/commons/backup.rb', line 9

def enable_backup_logs
  raise RuntimeError, "Backup support over SDK 23(Android 6.0, M)" unless available_backup?
  `#{::DroidAdbs.shell} setprop log.tag.BackupXmlParserLogging VERBOSE`.strip
end

.full_backup(package) ⇒ String

Returns message from adb command.

Parameters:

  • package (String)

    A package name you would like to backup

Returns:

  • (String)

    message from adb command

Raises:

  • RuntimeError because backup available over SDK 23



17
18
19
20
21
# File 'lib/droid_adbs/commons/backup.rb', line 17

def full_backup(package)
  raise RuntimeError, "Backup support over SDK 23(Android 6.0, M)" unless available_backup?
  `#{::DroidAdbs.shell} bmgr run`
  `#{::DroidAdbs.shell} bmgr fullbackup #{package}`.strip
end

.restore(package) ⇒ String

Returns message from adb command.

Parameters:

  • package (String)

    A package name you would like to backup

Returns:

  • (String)

    message from adb command



25
26
27
28
# File 'lib/droid_adbs/commons/backup.rb', line 25

def restore(package)
  fail "Backup support over SDK 23(Android 6.0, M)" unless available_backup?
  `#{::DroidAdbs.shell} bmgr restore #{package}`.strip
end

.transportsString

Returns message from adb command.

Returns:

  • (String)

    message from adb command



31
32
33
# File 'lib/droid_adbs/commons/backup.rb', line 31

def transports
  `#{::DroidAdbs.shell} bmgr list transports`.strip
end