Android O 让安装应用更安全

部分观察仔细的用户会注意到 Android O 的一个新特性:“允许未知来源” 的设置已经消失不见。要知道,这是在此前的 Android 版本中,安装 Google Play 或是其他认证商店之外的应用所必经的设置。本文就围绕新的未知来源应用安装许可,以及它为用户以及开发者所带来的益处展开。

前段时间我们发布了 Google Play 保护机制 (Google Play Protect),它能够全面且实时地保护您的设备。不同于第三方来源软件中会携带有潜在有害应用 (PHAs) ,Google Play 仍然是目前最安全的应用来源地。

潜在有害应用开发者的常见套路,是通过恶意下载器 (hostile downloader) 来加载他们的应用。试举一例,某个游戏应用中或许并不包含恶意代码,但它会将潜在有害应用伪装为一项重要升级,继而安装到用户的设备之上 (更多关于恶意下载器的信息请查阅 2016 年 Android 安全性总览) 。用户只要允许了未知来源应用安装,就很容易让这样狡诈的手段得逞。

左 (预览版 Android O) :潜在有害应用伪装为系统升级的安装界面;右 (Android O) :潜在有害应用安装前,首先需要用户允许该 App 进行安装

在 Android O 系统下,安装未知来源应用许可会使得该操作的安全性更高。就像其他的运行时权限 (runtime permissions) 一样,该项许可与触发安装的 App 绑定。确保在弹出安装页面之前,先让用户确认安装权限。在安装了 Android O 或更高版本系统的设备上,恶意下载器就无法在用户获得提示之前,诱导用户进行安装。

新的许可机制能够为用户提供透明化,可控且线性的可信任来源安装许可。在设置中,用户能够看到已经允许安装未知来源 App 的应用列表。用户也可按照自身需求,随时撤回某个应用的许可。

随时都能够查看已允许安装未知来源 App 的应用列表。如需让获取许可更具效率,开发者可在安装过程中,直接让用户跳转至许可界面。

开发者层面的变动

如要利用这一新的许可机制,通过包安装器 (Package Installer) 下载以及安装其他 App 的应用开发者们需要作出一些变动。如果应用在使用 26 或更高级别的targetSdkLevel来引导用户安装其他 App,那么清单文件则需要包括 REQUEST_INSTALL_PACKAGES 许可:

没有声明此项许可的应用无法安装其他 App。对于无 App 安装需求的应用来说,这是一种非常方便的安保办法。开发者可以通过 ACTION_MANAGE_UNKNOWN_APP_SOURCES 意图动作 (Intent action),让用户直接跳转到安装未知来源应用 (Install unknown apps) 的界面。也可以通过使用包管理器 (PackageManager)canRequestPackageInstalls ( )API,查询安装许可的状态。

请记住,如果这些 App 已在 Google Play 上发布,而且能够安装和更新其他应用,那么Google Play 政策法规仍然适用。绝大多数情况下,这种行为并不恰当;相反,您应该在 Google Play Store 的应用列表中提供一个深层链接 (deep-link)。

请确保已经了解更多有关安装未知来源应用的发布指南,并关注与 Android O 安全性相关的更多公告。

全新 Android 构建组件到底有多好用?

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 125,092评论 16 537
  • 刚刚看完《我的前半生》,也看了好多大师级的评论文章,每个人都有每个人的观点,每个人都有不一样的感受,我相信...
    浪迹天涯之歌阅读 96评论 1 1
  • 63【运动】如何报名与参加马拉松 运动,跑步,就要准备着跑马拉松 持续做的过程中不断对目标进行修正与改进 烂开始,...
    依盈阅读 7评论 0 0
  • 直接干: 1.官网最新deb包,sogoupinyin_2.1.0.0082_amd64; 2.直接双击安装包,安...
    胶布小子阅读 1,056评论 0 2
  • 前天腿伤好了,壳掉了,新生的肉长好了。还没来得及庆祝,昨天又感冒了。鼻塞、头疼,如脚踩棉花。 下了一夜的大雨,空气...
    容玲阅读 238评论 0 1