android - 以编程方式锁定 Android 设备

标签 android android-emulator locking device-admin

我一直在尝试通过程序锁定设备。但我仍然找不到解决方案。 我想通过程序锁定Android froyo2.2。我已经尝试过 keyguardmanager 和 DeviceAdminManager。

我的应用是远程锁定设备。当收到带有一些要锁定的密码字的消息时,它会锁定手机。我找到了许多 Api_demo 程序作为解决方案,但我无法单独从中提取锁定代码并找到解决方案。

最佳答案

Activity 类应该是内部类,外部类应该扩展 DeviceAdminReceiver

public class adminActivity extends DeviceAdminReceiver {

   public static class Controller extends Activity {

                    DevicePolicyManager mDPM;
            ComponentName mDeviceAdminSample;

        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);

                mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
                mDeviceAdminSample = new ComponentName(Controller.this,
                        adminActivity.class);
      }
   }
}

要锁定设备,请在您用于锁定的事件中编写代码

if (active) {
mDPM.lockNow();
}

如果启用了 DeviceAdmin,则手机将被锁定。 要启用设备管理员,需要调用 DevicePolicyManager Intent ,并且它应该由用户启用。

Intent intent = new   Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);  
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mDeviceAdminSample);        

关于android - 以编程方式锁定 Android 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4545079/

相关文章:

android - 通过按同一适配器内的按钮更改 ArrayAdapter 内的 TextView 的文本

android - 在工具栏中的 android 微调器上翻转箭头

android - 在首选项 Activity 中添加带有后退按钮的操作栏

android - 应用程序不适用于 Android 4.1

java - 图片保存在模拟器中但不在设备上

java - Android:不幸的是<应用程序名称>已停止

android - 按下后退按钮时显示两次对话框

c++ - 阻塞的互斥量有多昂贵?

sql-server - 我应该使用哪种 SQL Server 2005/2008 锁定方法来处理多个服务器应用程序实例中的各个表行?

jquery - 如何在 jQuery 中设置一个复选框来锁定现有的滑动窗口,使其无法移动,然后通过取消选中该框来解锁它?