我的设备所有者应用程序遇到了一个问题:在android 5.1之前,它运行得很好,但现在在android5.1更新之后,安装设备所有者应用程序将禁用备份服务。
现在在“设备设置”中,进入“备份和重置”选项时,备份服务将灰显,显示如下:备份服务处于非活动状态。这是由您的设备策略设置的
我可以在google git库中找到this source。代码不是很长也不容易理解,他们使用android.app.backup.ibackupmanager来禁用该服务…但更简单的是commit注释:
设置设备所有者时关闭备份管理器服务
以下是他们的工作:

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);
}

真的。。。这对我的项目来说是个严重的缺陷!别开玩笑了:现在安装设备所有者应用程序时,用户真的不可能备份数据吗?
所以,希望这里有人可以分享信息或经验?很遗憾,我不熟悉这个,但也许可以反思,这可以修复后?
谢谢你的阅读!

最佳答案

因为这是谷歌搜索设备所有者和备份
从android o开始,您可以使用DevicePolicyManager

setBackupServiceEnabled (ComponentName admin, Boolean enabled)

https://developer.android.com/reference/android/app/admin/DevicePolicyManager.html
您可以使用isBackupServiceEnabled检查是否启用
或设置它

08-18 16:36
查看更多