我正在开发适用于 android 的 MDM(移动设备管理)应用程序,但我有一个大问题,用户可以从设置>安全>设备管理员中禁用我的应用程序。我唯一能做的就是通过覆盖onDisableRequested(...)
我的DeviceAdminReceiver
子类中的方法来显示警告消息,但我真的想阻止用户完全禁用我的管理应用程序。
我试图覆盖该onReceive(...)
方法,以便当系统广播操作 ACTION_DEVICE_ADMIN_DISABLE_REQUESTED 和 ACTION_DEVICE_ADMIN_DISABLED 时没有任何反应,但到目前为止它还没有起作用。显然,其他一些组件在这些操作到达我的onReceive(...)
方法之前正在处理它们,我不知道为什么。我希望能够显示我自己的自定义对话框,指示用户无法从此部分禁用管理员应用程序,甚至可能要求用户设置管理员密码来执行此操作。
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (ACTION_PASSWORD_CHANGED.equals(action)) {
onPasswordChanged(context, intent);
} else if (ACTION_PASSWORD_FAILED.equals(action)) {
onPasswordFailed(context, intent);
} else if (ACTION_PASSWORD_SUCCEEDED.equals(action)) {
onPasswordSucceeded(context, intent);
} else if (ACTION_DEVICE_ADMIN_ENABLED.equals(action)) {
onEnabled(context, intent);
} else if (ACTION_DEVICE_ADMIN_DISABLE_REQUESTED.equals(action)) {
} else if (ACTION_DEVICE_ADMIN_DISABLED.equals(action)) {
} else if (ACTION_PASSWORD_EXPIRING.equals(action)) {
onPasswordExpiring(context, intent);
}
}
我需要帮助来解决这个问题。
谢谢,