【问题标题】:Device lock programmatically in Android在 Android 中以编程方式锁定设备
【发布时间】:2023-04-05 15:16:01
【问题描述】:

单击按钮时,我必须锁定模拟器。我用这个代码-

我不明白什么是 active 和 securemeAdmin

我用这个链接-> Lock the android device programmatically

public class adminActivity extends DeviceAdminReceiver
{
   public static class Test extends Activity
   {
      Button btn;
      DevicePolicyManager mDPM;
      ComponentName mDeviceAdminSample;

      @Override
      protected void onCreate(Bundle savedInstanceState) 
      {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.main);

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

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

         btn=(Button)findViewById(R.id.btn);

         btn.setOnClickListener(new OnClickListener() 
         {
        @Override
        public void onClick(View v) 
        {
           if (active) 
           {
            mDPM.lockNow();
           }
        }
         });
      }
   }
}

我也使用键盘保护管理器,但它也无法正常工作。谁能给我一个锁手机的例子吗?

public class Keyguard extends Activity 
{
    Button btn;
    KeyguardLock lock;
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        btn=(Button)findViewById(R.id.btn);

        KeyguardManager mgr = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE); 
        lock = mgr.newKeyguardLock(KEYGUARD_SERVICE);

        btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) 
        {
            lock.reenableKeyguard();
        }
    });
    }
}

【问题讨论】:

标签: android locking device-admin


【解决方案1】:

此代码将为您工作..

WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 0;
getWindow().setAttributes(lp);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD); 

【讨论】:

  • 此密码如何锁定设备?这只是改变屏幕亮度。我错过了什么吗?
【解决方案2】:

要锁定 android 设备,您必须需要管理员权限。您必须处理三件事 1) DeviceAdminReceiver 类 2)Manifest 文件 3) 调用 DevicePolicyManager 的锁定方法的活动类。参考这个链接http://developer.android.com/guide/topics/admin/device-admin.html

【讨论】:

    猜你喜欢
    • 2011-05-31
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多