本文章一部分资料来源于网上

1.实现一键锁屏关键是DevicePolicyManager这个类,然后使用lockNow();方法。

2.DevicePolicyManager类,可以让你的做软件获得系统级别的操作,例如锁屏,恢复出厂设置等。要使用这个类就要填加一个权限android:permission="android.permission.BIND_DEVICE_ADMIN"。

3.相关的代码

  1. package com.example.mylock;
  2.  
  3. import android.os.Bundle;
  4. import android.R.anim;
  5. import android.app.Activity;
  6. import android.app.admin.DevicePolicyManager;
  7. import android.content.ComponentName;
  8. import android.content.Context;
  9. import android.content.Intent;
  10. import android.view.Menu;
  11.  
  12. public class MainActivity extends Activity {
  13. private DevicePolicyManager policyManager;
  14. private ComponentName componentName;
  15. @Override
  16. protected void onCreate(Bundle savedInstanceState) {
  17. super.onCreate(savedInstanceState);
  18. setContentView(R.layout.activity_main);
  19. policyManager=(DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
  20. componentName=new ComponentName(this, AdminReceiver.class);
  21. mylock();
  22. android.os.Process.killProcess(android.os.Process.myPid());
  23. }
  24. private void mylock(){
  25. boolean active=policyManager.isAdminActive(componentName);
  26. if(!active){
  27. activeManage();
  28. policyManager.lockNow();
  29. }
  30. if(active){
  31. policyManager.lockNow();
  32. }
  33. }
  34. private void activeManage(){
  35. Intent intent=new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
  36. intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, componentName);
  37. intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "--其他描述--");
  38. startActivityForResult(intent, 0);
  39. }
  40.  
  41. @Override
  42. public boolean onCreateOptionsMenu(Menu menu) {
  43. // Inflate the menu; this adds items to the action bar if it is present.
  44. getMenuInflater().inflate(R.menu.main, menu);
  45. return true;
  46. }
  47.  
  48. }
  1.  
  2. 4.DevicePolicyManager的其他成员方法
  3.  
  4. 1 lockNow() //锁屏
    2 resetPassword(String password, int flags) //重置密码
    3 setMaximumFailedPasswordsForWipe(ComponentName admin, int num) //设置密码输入失败的最大次数
    4 setMaximumTimeToLock(ComponentName admin, long timeMs) //设置开始锁屏的最大时间(据我理解,用于某些应用哪怕不进行操作,也不希望锁屏的时候)
    5 setPasswordMinimumLength(ComponentName admin, int length) //设置密码最短长度
    6 setPasswordQuality(ComponentName admin, int quality) //设置密码质量?
    7 wipeData(int flags) //擦出用户数据

android DevicePolicyManager实现一键锁屏的更多相关文章

  1. Android简易实战教程--第六话《开发一键锁屏应用2·完成》

    转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/51885687点击打开链接 上一篇,初步开发了这个应用,功能都有了(见http:// ...

  2. Android Device Administration 设备管理器——实现一键锁屏

    Android Device Administration 设备管理器--实现一键锁屏 最近研究了一下安全这一块的内容,当然,我是比较水的,所以也拿不出什么好知识点,但是有一些冷门的东西我还是可以聊聊 ...

  3. Android简易实战教程--第五话《开发一键锁屏应用》

    转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/51860900 点击打开链接 Device Administration 对于这个应 ...

  4. Android一键锁屏源码

    APK下载 源程序下载 锁屏流程如下(参考于Android一键锁屏开发全过程[源码][附图]) 源码参考于一键锁屏 源码 一共有2个Java文件: package com.example.onekey ...

  5. Android一键锁屏APP

    题记: 这个app完全是拾人牙慧,作为练手用的,其实没有什么原创的东西.当然,博客还是我自己写的,记录下来,对自己也算是一种成长吧. 转载请注明原文地址: http://www.cnblogs.com ...

  6. Android开发之实现锁屏功能

    锁屏须要引入设备超级管理员.在文档Android开发文档的Administration中有具体的说明. Android设备管理系统功能和控制訪问. 主要有一下几个步骤: 1  创建广播接收者,实现De ...

  7. Android框架浅析之锁屏(Keyguard)机制原理

    最近终于成功的摆脱了FM收音机,迈向了新的模块:锁屏.状态栏.Launcher---姑且称之为“IDLE”小组,或许叫手机 美容小组,要是能施展下周星星同学的还我漂漂拳,岂不快哉. OK,闲话打住,咱 ...

  8. XC一键锁屏应用

    XC一键锁屏,一键Android锁屏应用,彻底解放开关机键~ 下载地址: http://download.csdn.net/detail/jczmdeveloper/7329447

  9. 【WP 8.1开发】一键锁屏

    在WP8的时候,关于如何关闭屏幕,国内外都有不少文章了,大家有兴趣地可以搜搜,很多,我就不给链接了,因为稍后我的例子中会有. 其实,关闭屏幕是调用了未开放的API,正因为这个API未开放的,不敢保证所 ...

随机推荐

  1. javaWeb中servlet开发(5)——WEB开发模式:Mode I与Mode II

    1.servlet开发 2.model I模式 客户端通过访问JSP,调用里面的javabean,而通过javabean调用处理数据库的操作,javabean中有专门处理数据库的操作,数据库主要以DA ...

  2. App 打包并跳过 AppStore 的发布下载

    一.App 打包 (编译 -> 链接 -> 打包) 1) 下载发布版的证书并安装. 2)Target -> Build Setting,改为发布版本的 profile 3) Targ ...

  3. [LeetCode]题解(python):118 Pascal's Triangle

    题目来源 https://leetcode.com/problems/pascals-triangle/ Given numRows, generate the first numRows of Pa ...

  4. 判断日期是否符合yyyy-mm格式

    !Regex.IsMatch(dr["DMAKEDATE"].ToString(),@"^(?<year>\\d{2,4})-(?<month>\ ...

  5. sdk 更新的时连接不上dl-ssl.google.com解决办法

    今天有朋友说sdk的更新不了,借了个VPN给他也没解决问题,后来还是他自己解决了,下面分享下经验 这里介绍一种不需要FQ的解决办法,修改C:\Windows\System32\drivers\etc下 ...

  6. CSS之border-radius

    1.圆角设置 CSS3圆角只需设置一个属性:border-radius(含义是"边框半径").你为这个属性提供一个值,就能同时设置四个圆角的半径.所有合法的CSS度量值都可以使用: ...

  7. html5新增语义标签

    1.header <header> 标签定义文档的页眉(介绍信息). 2.nav <nav> 标签定义导航链接的部分. 3.article <article> 标签 ...

  8. MyBatis(2):config.xml文件

    前言 前一篇文章,讲了MyBatis入门,讲到了MyBatis有两个基本的配置文件,一个用来配置环境信息,一个用来写SQL语句.前者我把它命名为config.xml,config.xml的内容是: 1 ...

  9. android studio 引入第三方类库jar包

    第三方类库jar包 这就简单多了,直接将jar包拷贝到app/libs下,然后在app下的build.gradle中添加此jar的依赖.如下: dependencies { compile 'com. ...

  10. 自定义view imageviw

    新建一个类继承imageview package com.exaple.myselfview; import android.content.Context; import android.graph ...