Android 设备管理API概览(Device Administration API)
原文:http://android.eoe.cn/topic/android_sdk
Android 2.2通过提供Android设备管理API的支持来引入企业应用支持。在系统级的设备管理API提供了设备管理功能。这些API允许你在企业环境中创建非常有用的有安全意识的应用程序,在其中IT专业人士需要员工设备的丰富的控制权。例如,内置的Android电子邮件应用程序,利用新的API来提高Exchange的支持。通过电子邮件应用程序,Exchange管理员可以强制执行密码政策 - 包括字母数字密码或数字的PINs - 跨设备。管理员还可以远程擦除(即,恢复出厂默认设置)丢失或被盗的手机。 Exchange用户可以同步他们的电子邮件和日历数据。
本文档的目的是为想要开发Android设备的企业解决方案的开发者所准备。它讨论的设备管理API所提供的各种功能,用来给搭载Android的员工设备提供更强的安全性。
* 设备管理 API 概览(Device Administration API Overview)*
下面可以使用设备管理API的应用程序的类型的例子:
- 电子邮件客户端。
 - 用来远程擦除的安全应用程序。
 - 设备管理服务和应用程序。
 
它如何工作
您使用设备管理API来编写设备管理应用程序,用户在其设备上安装。设备管理应用程序强制执行所需的策略。下面是它的工作原理:
- 系统管理员开发强制执行远程/本地设备安全策略的设备管理应用程序。这些策略可能是硬编码到应用程序,或可以从第三方服务器上的应用程序动态地获取策略。
 - 应用程序被安装在用户的设备上。目前Android没有一个自动化的配置解决方案。一个系统管理员可能会用如下方式向用户分发应用程序:
 - * Google Play(Google 应用市场)。
 - * 启用从其它应用商店安装。
 - * 通过其他方式分发应用程序,如电子邮件或网站。
 - 系统会提示用户来使设备管理应用程序可用。如何以及何时发生这种情况取决于应用程序是如何实现的。
 - 一旦用户是设备管理应用可用,他们取决于他们的策略。遵守这些策略通常有好处,比如对敏感系统和数据的访问。
 
如果用户没有启用的设备管理应用程序,它仍然是在设备上,但处于非活动状态。用户不会受到其策略影响,同样他们将不会得到任何应用程序的好处,例如,他们可能无法同步数据。
如果用户不遵守的政策(例如,如果用户设置了密码,违反了指引),它是由应用程序决定如何处理这。然而,一般情况下,这会导致在用户不能够进行同步数据。
如果某个设备试图连接到一个需要在设备管理API不支持的政策的服务器,则连接将不会被允许。设备管理API目前不允许部分配置。换句话说,如果一个设备(例如,旧设备)并不支持所有既定的政策,没有办法让设备连接。
如果设备包含多个功能的管理应用,实施最严格的政策。有办法针对一个特定的管理应用程序。
要卸载现有的设备管理应用程序,用户需要先以管理员身份注销该应用程序。
策略
在企业环境中,通常的情况是,员工设备必须坚持一套严格的设备使用的管理政策。设备管理API支持表1中列出的政策。需要注意的是设备管理API目前仅支持密码锁屏:
{| class"width: 85%; height: 50px" |-
! 策略 !! 描述
|- style="height: 100px;"
|style="width: 150px;"| 启用密码 || 需要设备要求PIN或密码。
|- style="height: 100px;"
|style="width: 150px;"| 密码长度最小值 || 设置所需的密码的字符数。例如,您可以要求PIN或密码有至少6个字符。
|- style="height: 100px;"
|style="width: 150px;"| 需要字母数字密码 || 需要密码有字母和数字的组合。它们可能包括符号字符。
|- style="height: 100px;"
|style="width: 150px;"| 需要复杂的密码 || 要求密码必须包含至少一个字母,一个数字一个数字,一个特殊的符号。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 所需的最小字母的密码 || 在所有的管理员或一个特定的密码所需的最小数目的字母。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 最低小写字母的密码 || 需要在所有的管理员密码或一个特定的小写字母的最小数目。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 所需的最小非字母字符的密码 || 非字母字符在所有的管理员或一个特定的密码所需的最小数目。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 所需的最低位数字密码 || 在所有的管理员或一个特定的密码所需的最小数目的位数字。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 所需的最小符号的密码 || 在所有的管理员或一个特定的密码所需的符号的最小数目。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 最低的大写字母的密码 || 需要在所有的管理员密码或一个特定的大写字母的最小数量。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 密码过期超时 || 当密码将过期,表现为以毫秒为单位的增量从设备时,管理员设置的过期超时。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 密码历史记录的限制 || 此策略可以防止用户重复使用的最后Ň独特的密码。该策略通常使用结合与 setPasswordExpirationTimeout() ,这迫使用户更新他们的密码后,在规定的时间内已经过去。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 最大密码尝试失败 || 用户可以指定多少次输入了错误的密码,然后该设备清除其数据。设备管理API,管理员还可以远程将设备重置为出厂默认值。保证数据的情况下在设备丢失或被盗。
|- style="height: 100px;"
|style="width: 150px;"| 最大的闲置时间锁定 || 设置的时间长度,因为用户最后一次触摸屏幕或设备之前,按下一个按钮,锁定屏幕。当发生这种情况时,用户需要输入自己的PIN或密码,才可以使用他们的设备和访问数据。该值可以是1到60分钟之间。
|- style="height: 100px;"
|style="width: 150px;"| 需要存储加密 || 指定的存储区域应加密,如果该设备支持它。在Android 3.0中引入。
|- style="height: 100px;"
|style="width: 150px;"| 禁用摄像头 || 指定的摄像头应该被禁用。请注意,这并不必须是一个永久禁用。该相机可以动态启用/禁用的情况下,时间等的基础上。在Android 4.0推出。
|- style="height: 100px;"
|}
其他功能
除了支持上表中列出的策略,设备管理API可让您执行下列操作:
- 提示用户设置一个新密码。
 - 立即锁定装置。
 - 擦拭设备的数据(即,使设备恢复到出厂时的默认设置)。
 
* 示例应用程序*
本文档中使用的例子是基于 设备管理API示例(Device Administration API sample),它包含在SDK示例。下载和安装SDK示例的信息,请参阅 获取示例 (Getting the Samples)。这里是示例的完整的代码 (complete code)。
Android 设备管理API概览(Device Administration API)的更多相关文章
- Zookeeper C API 指南四(C API 概览)(转)
		
上一节<Zookeeper C API 指南三(回调函数)>重点讲了 Zookeeper C API 中各种回调函数的原型,本节将切入正题,正式讲解 Zookeeper C API.相信大 ...
 - node-webkit学习(3)Native UI API概览
		
node-webkit学习(3)Native UI API概览 文/玄魂 目录 node-webkit学习(3)Native UI API概览 前言 3.1 Native UI api概览 Exte ...
 - Android Device Administration 设备管理器——实现一键锁屏
		
Android Device Administration 设备管理器--实现一键锁屏 最近研究了一下安全这一块的内容,当然,我是比较水的,所以也拿不出什么好知识点,但是有一些冷门的东西我还是可以聊聊 ...
 - Android 新老两代 Camera API 大起底
		
https://blog.csdn.net/Byeweiyang/article/details/80515192 0.背景简介 最近有一部分相机相关的需求,专注于对拍摄的照片.视频的噪点.色温.明暗 ...
 - [Android]使用Dagger 2依赖注入 - API(翻译)
		
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5092525.html 使用Dagger 2依赖注入 - API ...
 - android怎样调用@hide和internal API
		
android怎样调用@hide和internal API 2012-12-11 16:21 8772人阅读 评论(3) 收藏 举报 分类: Android开发(277) Android有两种类型 ...
 - Using 1.7 requires compiling with Android 4.4 (KitKat); currently using API 10
		
今天编译一个project,我设置为api 14,可是编译报错: Using 1.7 requires compiling with Android 4.4 (KitKat); currently u ...
 - IIS 7管理API——Microsoft.Web.Administration介绍
		
原文:http://www.cnblogs.com/dflying/archive/2006/04/17/377276.html 本文翻译整理自Carlos Aguilar Mares的blog文章: ...
 - Android应用中使用百度地图API并加入标注(一)
		
网上一些资料这样的的内容已经过时了,这里是最新的内容,假设哪里不正确,请吐槽... 1)下载百度地图移动版API(Android)开发包 要在Android应用中使用百度地图API,就须要 ...
 
随机推荐
- pip安装psutil模块时候报错:yum install python-devel mysql-devel zlib-devel openssl-devel
			
yum install python-devel mysql-devel zlib-devel openssl-devel [root@localhost software]# pip install ...
 - MongoDB副本集配置系列四:节点的关闭顺序
			
接上一篇博客:http://www.cnblogs.com/xiaoit/p/4522218.html Primary Secondary Arbiter 1:关闭顺序PSA :会报错 2:关闭顺序P ...
 - ubuntu1604安装tensorflow
			
操作系统 :ubuntu-16.04.2-desktop-amd64tensorflow版本: 1.0.0python版本 : 2.7.12 开启ssh : sudo apt install open ...
 - 从0開始写MyScrollView
			
从0開始写MyScrollView 上篇文章对ScrollView的详细实现进行了分析.本文依据上篇分析的结果.自己动手写一个ScrollView. step1 尾随手指滑动,非常easy.重写2个函 ...
 - 通过Navicat Premium迁移Oracle到EDB迁移实战
			
1.1 DB migration analysis 在从Oracle向EDB迁移数据之前,须要做非常多准备工作.比方须要分析源数据库数据量大小.数据是否稳定.异构数据库兼容.编码方式.业务逻辑(存 ...
 - 【BI】OLTP与OLAP的区别
			
概念 OLTP:联机事务处理(On-Line transaction Processing) OLAP:联机分析处理(On-Line Analytical Processing) (1)OLTP是传统 ...
 - V-rep学习笔记:机器人模型创建2—添加关节
			
下面接着之前经过简化并调整好视觉效果的模型继续工作流,为了使模型能受控制运动起来必须在合适的位置上添加相应的运动副/关节.一般情况下我们可以查阅手册或根据设计图纸获得这些关节的准确位置和姿态,知道这些 ...
 - 解决input 有多少个radio绑定change事件,手动触发就会执行多少次问题
			
如题,相信大家都会遇到这个问题,那么为什么会触发多次呢?其实当你用jquery绑定onchange事件的时候你就无形中给每个radio绑定了事件,所以才会出现执行多少次的问题了,那么如何解决呢,其实这 ...
 - [转载]JDBC/Spring/MyBatis性能比较
			
原文地址:JDBC/Spring/MyBatis性能比较作者:tom_lt 测试目的: 比较JDBC,SpringJdbc和MyBatis的性能. 测试用例: 1. 查询:查询一张10000条数据 ...
 - svn备份与还原_脚本_(dump命令)
			
今天备份svn, 能保证好用就行先, 回头再研究 buerguo.bat @echo off :: 关闭回显 :: 说明:如有命令不明白,请使用帮助命令:命令/? .如:for/? :: 设置标题 t ...