【发布时间】:2015-08-01 07:39:13
【问题描述】:
我的设备所有者应用程序出现问题:在 Android 5.1 之前它运行良好,但现在更新到 Android 5.1 后,安装设备所有者应用程序会禁用备份服务。
现在在设备设置中,当进入备份和重置选项时,备份服务显示为灰色,表示:备份服务处于非活动状态。这是由您的设备政策设置的
我可以在 google git 存储库上找到 this source... 代码不是很长且易于理解,他们使用 android.app.backup.IBackupManager 来禁用该服务... 但更容易的是提交评论:
设置设备所有者后关闭备份管理器服务
这是他们的工作:
import android.app.backup.IBackupManager;
// Shutting down backup manager service permanently.
long ident = Binder.clearCallingIdentity();
try {
IBackupManager ibm = IBackupManager.Stub.asInterface(
ServiceManager.getService(Context.BACKUP_SERVICE));
ibm.setBackupServiceActive(UserHandle.USER_OWNER, false);
} catch (RemoteException e) {
throw new IllegalStateException("Failed deactivating backup service.", e);
} finally {
Binder.restoreCallingIdentity(ident);
}
哇...这对我的项目来说是一个严重的缺陷!不开玩笑:用户现在真的不可能在安装设备所有者应用程序的同时备份他的数据吗?
那么,希望这里有人可以分享有关此的信息或经验吗?遗憾的是,我对此并不熟悉,但也许使用 reflection 这可以在之后修复?
感谢您的阅读!
【问题讨论】:
-
我还应该添加一个重要信息:在配置设备时,优先于 5.1,我必须设置我的谷歌帐户,如果需要,选择恢复选项,然后应用 NFC 配置光束......现在NFC 必须在 google 帐户之前应用,否则一旦 google 帐户设置它说它已经为时已晚设备已经配置...这个问题可能与这种新行为有关,但是如何避免...?
标签: android android-backup-service device-owner