在境外,Android 的体验将越来越好,在中国,Android 的更新可能将止步于6.0!

话题讨论:Instant App 在中国将何去何从?

以下为谷歌原创文章 2017-03-03 Google Play 谷歌开发者

我们一向致力于让用户能以更加省力的方式发现并使用各种应用,而 Android Instant App 正是这一理念的集中体现——这是一种用户无需安装即可运行 Android 应用的全新方式。

正如上图所示,由于不需要事先安装应用,Instant App 能在任何场合直接抵达用户。“瞬间抵达用户” 这个概念吸引了大量开发者的注意(事实上自去年 I/O 大会以来就变成了热点)。

我们正与部分开发者一起合作,努力改善用户和开发者的体验。如今,来自 BuzzFeed、Wish、Periscope 和 Viki 等应用的 Instant App 将首次对 Android 用户开放试用。通过收集用户反馈并在产品上进行迭代,使得我们能够将这种体验推广到更多应用,吸引更多用户。

想要开发 Instant App,您需要更新现有的 Android 应用以使其能利用 Instant App 的功能,然后对应用进行模块化处理,以使应用的部分功能模块可以被单独下载并即时运行。在这个过程中,您将使用相同的 Android API 和 Android Studio 项目。我们计划在几个月后提供完整的 SDK。而现在,您可以进行如下的操作,来为您的 Instant App 开发做好准备:

  1. 从应用程序中删除所有不必要的东西

移除任何未知 / 未使用的权限、未使用的组件、不必要的第三方依赖关系以及代码库。移除这些项目可以显著降低应用大小,并大幅提升性能。

  1. 支持 Android App Links

Instant App 使用 Android 6.0 中推出的 Android App Links 功能来自动处理网页链接。因此,Instant App 基于 URL 的导航功能需要 App Links 的支持。

Android Instant App 使用 URL 进行所有导航操作。当用户点击链接打开您的 Instant App 时,他们会进入应用的一个特定的功能模块。如果链接失效,或用户在不支持的设备上点击了链接,浏览器就会打开,并显示您的网站。此外,在 Instant App里,不能直接从一个功能模块跳转到另外一个功能模块,而是需要通过那个功能模块所对应的 URL 地址。

  1. 如有必要,重构您的应用

Android Instant App 需要由大小不超过 4MB 的可通过 URL 寻址的模块构建而成。如果应用大小超过 4MB,开发者就需要将应用重构为可下载的、响应 URL 导航独立运行的较小的模块。

开发者可以自由选择每个模块中的内容,但我们建议将不同的用户流程分为不同的模块。这使得用户在同一流程内能获得快速的响应体验,而只有当用户切换流程时,才会下载额外的模块。例如,在构建零售体验的时候,您也许会将应用划分成浏览、搜索、商品详情及付款这 4 个模块,让用户在整个购物流程中根据自身需要下载相应的模块。

  1. 实现运行时权限

Android Instant App 使用了由 Android 6.0 引入的运行时权限。同时 Instant App 的框架确保这些功能在较早版本的 Android 系统上也能正常运行。因此,请确保的您应用是针对 Android 6.0 以上的版本,并实现了运行时权限。

  1. 如果应用需要验证用户身份,则须实现Smart Lock for Passwords功能

如果 Instant App 需要用户进行登录,开发者就必须整合 Smart Lock for Passwords。这项功能允许用户使用他们保存的账户信息快速、安全地登录,并在用户进行跨应用访问时保持登录状态。

  1. 清理不应支持的功能

用户对于已安装的应用和通过 URL 直接访问的应用的期待程度可能有所不同,所以某些特定的、适用于完整安装应用的功能在 Instant App 中不应实现。使用了下列任何功能的开发者都需要对自己的应用进行重构,将不支持的功能移入单独的代码库模块中,只有完整安装的应用才能包含这些功能模块。

Instant App 不能:
在用户没意识到的情况下在后台运行。即时应用只能通过支持 App Links 的功能模块启动,自然的,各种服务、内容推送和广播接收者就无法启动 Instant App 了。此外,Instant App 目前还不支持推送通知。
在设备上访问外部存储设备。不过,Instant App 可以临时使用应用专属的内部存储空间。
发现设备上已经安装的应用列表,甚至直接与应用列表产生交互 
接收来自系统及其他已安装的应用程序的广播,或是使用 GCM。在未来,即时应用可能会在运行时支持少数几种广播。
使用符合下列特征的设备标识符:
持续时间长于 Instant App
用户无法重置(如设置 Secure Android ID(SSAID)、Build Serial、Mac 地址、IMEI、IMSI)。请注意:开发者将可以使用 Advertising ID。
更改设备的设置(如更改用户的壁纸)。

非常感谢大家对于 Instant App 的持续关注,我们期待早日收到更多的用户反馈,也希望更多开发者早日做出属于自己的 Instant App 作品。

=== 原文结束 ===

有人说:

这可能是个分水岭!
在境外,Android 的体验将越来越好,在中国,Android 的更新可能将止步于6.0!

也有人说:

Android 集权或将加速分裂!

还有人说:

这是中国OS大厂的3月3!

你,怎么看?

Instant App 即将到来,Android 集权或将加速分裂的更多相关文章

  1. android上instant app介绍 类似于微信小程序

    android上instant app介绍 类似于微信小程序instant app 是谷歌推出的类似于微信小程序(或者说小程序类似于instant app)的一项技术,用户无须安装应用,用完就走,同时 ...

  2. 即将到来的Android N,将具备这些新特性

    原文转自:http://www.leiphone.com/news/201602/pSRQAuAjMFJITqHe.html         原创 訾竣喆 即将到来的Android N,将具备这些新特 ...

  3. [翻译] 初看 ASP.NET Core 3.0 即将到来的变化

    [翻译] 初看 ASP.NET Core 3.0 即将到来的变化 原文: A first look at changes coming in ASP.NET Core 3.0 在我们努力完成下一个 m ...

  4. repo: 创建local manifest以及如何添加app到CM/Android build系统中

    The local manifest Creating a local manifest allows you to customize the list of repositories on you ...

  5. Web程序员开发App系列 - 调试Android和IOS手机代码(补图)

    Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...

  6. 《大话移动APP测试:Android与iOS应用测试指南》

    <大话移动app测试:android与ios应用测试指南> 基本信息 作者: 陈晔 出版社:清华大学出版社 ISBN:9787302368793 上架时间:2014-7-7 出版日期:20 ...

  7. 企业SAAS的春天,将以手机应用的形式,即将到来

    派尔科技吴春福 *本文是派尔为什么要投身企业移动应用的内部分享文章: *我没有仔细核查资料,仅代表个人看法,思路也是在整理过程,逻辑未必很完整,看官将就着看. 企业SAAS,概念起源是N年前,先行者也 ...

  8. Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException

    异常Log: Error:Execution failed for task ‘:app:dexDebug’. > com.android.ide.common.process.ProcessE ...

  9. 准备:新V8即将到来,Node.js的性能正在改变

    V8的Turbofan的性能特点将如何对我们优化的方式产生影响 审阅:来自V8团队的Franziska Hinkelmann和Benedikt Meurer. **更新:Node.js 8.3.0已经 ...

随机推荐

  1. 介绍一个开源的在线管理SQLServer的小工具--SQLEntMan

    近来有许多人问起SQL在线管理的问题,遂将以前用过的一个开源SQL 在线管理工具修改了一下,并分享. 看下效果图: 原项目的地址:http://sourceforge.net/projects/asp ...

  2. jQuery删除DOM节点

    jQuery删除DOM节点 <%@ page language="java" import="java.util.*" pageEncoding=&quo ...

  3. 理解 Objective-C Runtime

    初学 Objective-C(以下简称ObjC) 的人很容易忽略一个 ObjC 特性 —— ObjC Runtime.这是因为这门语言很容易上手,几个小时就能学会怎么使用,所以程序员们往往会把时间都花 ...

  4. SQL SERVER分区具体例子详解

    在日常工作中,我们会遇到以下的情况,一个表每日数万级的增长,而查询的数据通常是在本月或今年,以前的数据偶尔会用到,但查询和插入的效率越来越慢,用数据库分区会有助于解决这个问题.关于分区的理论知识网上很 ...

  5. 导入android工程没有R文件的解决办法

    第一种: 千万不要重启Eclipse.也不自己创建R.java 类文件! 右击你的工程(项目)——>Android Tools——>Fix Project Properties       ...

  6. Go并发编程实践

    前言 并发编程一直是Golang区别与其他语言的很大优势,也是实际工作场景中经常遇到的.近日笔者在组内分享了我们常见的并发场景,及代码示例,以期望大家能在遇到相同场景下,能快速的想到解决方案,或者是拿 ...

  7. SQL Server-聚焦SNAPSHOT基于行版本隔离级别详解(三十)

    前言 上一篇SQL Server详细讲解了隔离级别,但是对基于行版本中的SNAPSHOT隔离级别仍未完全理解,本节再详细讲解下,若有疑义或不同见解请在评论中提出,一起探讨. SNAPSHOT行版本隔离 ...

  8. ubuntu14.04下手动安装eclipse

    ubuntu14.04下手动安装eclipse 第一步: 安装jdk 第二步: 下载eclipse,假设下载的文件文件名为eclipse.tar.gz 第三步: 解压 sudo -zxvf ./ecl ...

  9. Microsoft.Identity的IPasswordHasher的默认实现与运用

    本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址  www.cnblogs.com/tdws 相信了解了MS Identity认证体系的一定知道UserManager的作用,他是整个体 ...

  10. QT编程环境搭建

    使用QT需要QT的库以及QT creator,在QT5以后的版本中,两者已经集成,不需要单独下载了,只需要下载一个文件即可.配置步骤如下: 1.下载qt-opensource-windows-x86- ...