📜  移动安全-Android操作系统

📅  最后修改于: 2020-12-06 11:41:03             🧑  作者: Mango


众所周知,谷歌为移动设备开发了具有智能手机和平板电脑处理能力的软件。它的内核基于Linux。它安装的应用程序在沙箱中运行。但是,许多生产商已经发布了针对此类OS的防病毒软件,例如Kasperky,MCAfee和AVG Technologies。即使防病毒应用程序在沙盒下运行,它对扫描环境也有一定的限制。

Android OS的一些功能如下-

  • 针对移动设备优化的Dalvik虚拟机
  • SQLite结构化数据数据库
  • 基于WebKit引擎的集成浏览器
  • 支持不同的媒体格式,例如音频,图像,视频
  • 丰富的开发环境,例如模拟器(Bluestack),调试工具

Android OS架构

下图显示了Android OS的整体架构-

Android OS架构

  • 第一层是应用程序,包括SMS,日历和其他第三方应用程序之类的应用程序。

  • 第二层是应用程序框架,其中包括-

    • 视图系统,供开发人员创建框,线,网格等。

    • 内容提供商允许应用程序访问和使用来自第三方应用程序的数据。

    • 活动管理器控制应用程序的生命周期。

    • 资源管理器将资源分配给应用程序。

    • 通知管理器有助于显示应用程序的通知。

  • 第三层是库,这是最重要的部分。它利用了应用程序的函数,例如,将日期存储在数据库中。利用此函数的是SQLite。

  • 第四层是Linux内核。它包含硬件组件的所有驱动程序,例如相机,无线,存储设备等。

Android设备管理API

Android 2.2中引入的设备管理API在系统级别提供了设备管理功能。这些API使开发人员可以创建可在企业设置中使用的安全意识型应用程序,其中IT专业人员需要对员工设备的丰富控制。

设备管理应用程序是使用设备管理API编写的。当用户在其设备上安装这些应用程序时,这些设备管理应用程序将执行所需的策略。内置应用程序可以利用新的API来改善交换支持。

以下是一些可能使用设备管理API的应用程序类型的示例-

  • 电子邮件客户
  • 进行远程擦除的安全应用程序
  • 设备管理服务和应用

本教程中使用的示例基于设备管理API示例,该示例包含在SDK示例中(可通过Android SDK Manager获得),并且以

/ ApiDemos / app / src / main / java / com / example / android / apis / app / DeviceAdminSample.java。

样品申请

该示例应用程序提供了设备管理功能的演示。它为用户提供了一个用户界面,使他们能够启用设备管理应用程序。

样品申请

用户启用应用程序后,可以使用用户界面中的按钮执行以下操作:

  • 设置密码质量。

  • 指定用户密码的要求,例如最小长度,必须包含的最小数字字符等等。

  • 设置密码。如果密码不符合指定的策略,系统将返回错误信息。

  • 设置在擦除设备(即恢复为出厂设置)之前密码尝试失败的次数。

  • 设置从现在起密码将过期的时间。

  • 设置密码历史记录的长度(长度是指历史记录中存储的旧密码的数量)。这样可以防止用户重用他们先前使用的最后一个密码。

  • 如果设备支持,则指定应加密存储区。

  • 设置设备锁定之前可以经过的最长时间。

  • 立即锁定设备。

  • 擦除设备数据(即恢复出厂设置)。

  • 禁用相机。