Instant App 即将到来,Android 集权或将加速分裂
在境外,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 开发做好准备:

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

- 支持 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 地址。

- 如有必要,重构您的应用
Android Instant App 需要由大小不超过 4MB 的可通过 URL 寻址的模块构建而成。如果应用大小超过 4MB,开发者就需要将应用重构为可下载的、响应 URL 导航独立运行的较小的模块。
开发者可以自由选择每个模块中的内容,但我们建议将不同的用户流程分为不同的模块。这使得用户在同一流程内能获得快速的响应体验,而只有当用户切换流程时,才会下载额外的模块。例如,在构建零售体验的时候,您也许会将应用划分成浏览、搜索、商品详情及付款这 4 个模块,让用户在整个购物流程中根据自身需要下载相应的模块。

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

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

- 清理不应支持的功能
用户对于已安装的应用和通过 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 集权或将加速分裂的更多相关文章
- android上instant app介绍 类似于微信小程序
android上instant app介绍 类似于微信小程序instant app 是谷歌推出的类似于微信小程序(或者说小程序类似于instant app)的一项技术,用户无须安装应用,用完就走,同时 ...
- 即将到来的Android N,将具备这些新特性
原文转自:http://www.leiphone.com/news/201602/pSRQAuAjMFJITqHe.html 原创 訾竣喆 即将到来的Android N,将具备这些新特 ...
- [翻译] 初看 ASP.NET Core 3.0 即将到来的变化
[翻译] 初看 ASP.NET Core 3.0 即将到来的变化 原文: A first look at changes coming in ASP.NET Core 3.0 在我们努力完成下一个 m ...
- repo: 创建local manifest以及如何添加app到CM/Android build系统中
The local manifest Creating a local manifest allows you to customize the list of repositories on you ...
- Web程序员开发App系列 - 调试Android和IOS手机代码(补图)
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- 《大话移动APP测试:Android与iOS应用测试指南》
<大话移动app测试:android与ios应用测试指南> 基本信息 作者: 陈晔 出版社:清华大学出版社 ISBN:9787302368793 上架时间:2014-7-7 出版日期:20 ...
- 企业SAAS的春天,将以手机应用的形式,即将到来
派尔科技吴春福 *本文是派尔为什么要投身企业移动应用的内部分享文章: *我没有仔细核查资料,仅代表个人看法,思路也是在整理过程,逻辑未必很完整,看官将就着看. 企业SAAS,概念起源是N年前,先行者也 ...
- 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 ...
- 准备:新V8即将到来,Node.js的性能正在改变
V8的Turbofan的性能特点将如何对我们优化的方式产生影响 审阅:来自V8团队的Franziska Hinkelmann和Benedikt Meurer. **更新:Node.js 8.3.0已经 ...
随机推荐
- jQuery事件触发和参数传递
jQuery事件触发和参数传递: 参考:http://www.jb51.net/article/36249.htm <%@ page language="java" impo ...
- repeater控件自定义Url分页带参数
repeater控件的效果图如下: 该页面实现的功能如下: 1.上下分页,(也可以带首页和末页,我只是禁掉了没用) 2.根据用户输入的指定分页索引进行跳转 3.根据筛选数据的参数进行URL分页的参数传 ...
- 对angularjs时间过滤格式
在最近的项目中,我遇到这样的一个小问题,从后台传过来一个时间值,格式如下: "/Date(1484743002000)/" 至于为什么是这种格式,后台的开发说数据库中就是这个存的( ...
- 从新手到高手c++全方位学习 pdf + 视频教程 共18章
淘宝已经和谐了这个网站,原网址:https://item.taobao.com/item.htm?spm=a1z09.8149145.0.0.mb00D0&id=17350311256& ...
- 微信面试题-获取元素的最终background-color
一.题目 用JS代码求出页面上一个元素的最终的background-color,不考虑IE浏览器,不考虑元素float情况. 二.题目解析 1.考察底层JavaScript基础 前端开发,日常最 ...
- Ionic start 创建项目报错 Error with start undefined
转自:http://blog.csdn.net/wenzigui_qy/article/details/52874542 在Installing npm packages的时候报错,如下: Insta ...
- java udp socket通信(仅发送)
实现功能:客户端发送一个字符串(可以为汉字),服务器端接收并显示 服务器端程序: package udpServer; import java.io.*; import java.net.*; /** ...
- 关于hibernate注解的简单应用
@Override 用途:重写父类的同名方法 单元测试注解 @Test 用途:用于测试 @Before 用途:单测方法走之前执行 @After 用途:单测方法走之后执行 注解的目标:替换小配置.替换h ...
- 一键打包并发布到Nuget平台
目标是只要执行一个命令就自动发布新版本到nuget平台 第一步在nuget官网注册一个账号 会有一个APIKEY 如下图 在工程里面添加一个Gruntfile.js 然后copy以下代码 在vs里 ...
- C# 6 与 .NET Core 1.0 高级编程 - 40 ASP.NET Core(下)
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 40 章 ASP.NET Core(下)),不对的地方欢迎指出与交流. 章节出自<Professiona ...