Google 让 Android 应用不需要安装就能运行

  • Abel Avram
  • 孙镜涛

2016 年 5 月 26 日

话题:移动Android语言 & 开发

Google 在近日举行的 Google I/O 大会上发布了 Android 即时应用,该特性使得应用可以直接运行而不需要预先安装。

Android 即时应用是 2016 年 Google I/O 大会主题演讲上发布的一个新的 Android 特性。Apple、Facebook、Twitter、URX 等对实现深度链接非常感兴趣的公司都在试图说服应用开发者使用深度链接索引他们的应用,当用户点击某个深度链接的时候将其带到一个应用中的某个特定页面。如果想了解更多与深度链接原理相关的信息可以查看这篇 InfoQ 文章。但是之前的方法首先需要安装应用。Google 最初也是采用这种思想,但是现在他们做出了调整,在 Android 中不需要安装应用就能够实现深度链接。当用户点击一个深度链接的时候,相关的应用会被下载并展示相应的活动,即使该应用之前并没有安装。Google 在 I/O 大会上展示了这种运行在其他应用内部的即时应用。用户操作完即时应用之后会无缝地返回到初始应用,体验非常好。此外,开发者还可以为用户提供永久安装该应用的选项供用户选择。

在主题演讲的 Demo 演示上,目标应用加载的非常快,有人评论说他们自己动手实验时应用的加载速度甚至比 Chrome 加载一个 Web 页面的速度还快。这是有可能的,因为被加载的应用已经被拆分成模块,只有需要的模块才会被加载。为了能够使用这种方式,开发者必须模块化他们的应用。虽然是同一个应用,同一份源码,但是需要生成两个构建包:一个用于常规的 APK 安装,一个是模块化的用于即时运行。后一个应用也存储在 Google Play 上,开发者不需要做任何特别的事情。根据 Google 提供的信息,处理一个应用使之能够以即时方式运行所花费的时间通常不会超过一天,但是所需工作最终还是依赖于应用所采用的结构。

即时应用需要 Play Services 和 API level 16+(也就是 Android Jelly Bean 4.1+)。Android 即时应用将会使用 Marshmallow 引入的权限方案。同时 Google 还提到:“如果一个应用支持 Android 6.0 (API level 23) 引入的权限模型,那么将其变成一个能够运行在较老设备上的即时应用不需要任何附加的工作。”此外,某些特性对即时应用是不可用的,例如后台服务、后台通知以及唯一设备识别码。

Android 即时应用现在还是 Preview 版本,感兴趣的人会被邀请填写一个兴趣表单。即时应用将会在今年晚些时候对公众开放。

查看英文原文:Google Makes Android Apps Run without Install

移动Android语言 & 开发