diff options
author | Annie Meng <anniemeng@google.com> | 2018-06-06 10:30:33 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-06-06 10:30:33 +0000 |
commit | da7b36c9d9da5e856620ef1552761844db1e078e (patch) | |
tree | 25be4e9ef6f386b8407ec49516e255afd644633d | |
parent | 88cc4d09a39ac5b402597a74760bf2cb9b5906b6 (diff) | |
parent | 8927037477f4a895b35c492e0861dea86dd2440f (diff) |
Merge "Disable bmgr if BMS is not running"
-rw-r--r-- | cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java index 448ce1590361..641ae00deda5 100644 --- a/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java +++ b/cmds/bmgr/src/com/android/commands/bmgr/Bmgr.java @@ -71,9 +71,7 @@ public final class Bmgr { return; } - mBmgr = IBackupManager.Stub.asInterface(ServiceManager.getService("backup")); - if (mBmgr == null) { - System.err.println(BMGR_NOT_RUNNING_ERR); + if (!isBmgrActive()) { return; } @@ -150,6 +148,27 @@ public final class Bmgr { showUsage(); } + private boolean isBmgrActive() { + mBmgr = IBackupManager.Stub.asInterface(ServiceManager.getService("backup")); + if (mBmgr == null) { + System.err.println(BMGR_NOT_RUNNING_ERR); + return false; + } + + try { + if (!mBmgr.isBackupServiceActive(UserHandle.USER_SYSTEM)) { + System.err.println(BMGR_NOT_RUNNING_ERR); + return false; + } + } catch (RemoteException e) { + System.err.println(e.toString()); + System.err.println(BMGR_NOT_RUNNING_ERR); + return false; + } + + return true; + } + private String enableToString(boolean enabled) { return enabled ? "enabled" : "disabled"; } |