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,就须要 ...
随机推荐
- Qt 立体水晶按键实现
一直对 Qt 怎样实现富有立体感的按键很好奇,做过很多尝试,最后用的图片,但是图片终究不够灵活,而且占内存. 今天偶然发现,使用下面的代码,作出的 QPushButton 效果还算不错.代码共享之: ...
- kube-proxy源代码分析
摘要:假设你对kube-proxy的工作原理有一定的了解.本文基于kubernetes v1.5代码对kube-proxy的源代码文件夹结构进行了分析,并以iptables mode为例进行了完整流程 ...
- jump-game i&&ii 能否跳出区间 贪心
I: Given an array of non-negative integers, you are initially positioned at the first index of the a ...
- Aspect实现对方法日志的拦截记录
在实际的业务系统中,我们通常都希望程序自动的打印方法的入参和返回值,某些特定的方法可能不想打印返回值(返回数据过大,打印日志影响效率),特有了下面的实现. 1.忽略返回值的java注解类 import ...
- jQuery处理下拉框(Select、radio、checkbox等)代码
//遍历option和添加.移除option <script> function changeShipMethod(shipping){ var len = $("select[ ...
- Retrofit三步理解之中的一个 ------------------ Retrofit的简单使用总结
概念: Retrofit一開始看起来使用比較麻烦是由于它和其它网络请求框架不同的是它是通过注解和interface来进行网络请求,而且须要对返回数据进行特殊处理才干使用. 1. 简单使用,请求返回St ...
- 1078. Hashing (25)【Hash + 探測】——PAT (Advanced Level) Practise
题目信息 1078. Hashing (25) 时间限制100 ms 内存限制65536 kB 代码长度限制16000 B The task of this problem is simple: in ...
- MyChatRoom——C#自制聊天室
一个用C#编写的基于Socket的Windows版聊天室,包括服务端和客户端.当服务端启动服务后,客户端可以连接到服务端,给服务端发送数据,服务端可以接收数据:服务端可以给客户端发送数据,客户端接收: ...
- ios中打包
第一步:这里需要注意,要选择真机,否则Archive 会是灰色的. 点击后,系统会自动编译一次,并跳转到如图界面: 第二步: 在你刚刚生成的程序上点击右键,并且点击Show in Finder. ...
- App 开发步骤
在 iOS 开发中,写一个 App 很容易,但是要写好一个 App,确是要下另一番功夫.首先,我们来看一个 App 的开发要求: 写一个 App,显示出 Spotify 上 Lady Gaga 相关的 ...