覆盖10亿设备,月活2亿,快应用要取代App?
作者 | 伍杏玲
来源 | CSDN(ID:CSDNnews)
2017 年 1 月 9 日,微信小程序横空出世,紧接着支付宝小程序、百度智能小程序、今日头条小程序、12 大厂商联盟的快应用等布局小程序。自此,小程序迅速改变国内移动互联网的格局,形成富有中国特色的“超级 App+小程序”的生态局面。
这其中,覆盖中国主流 Android 手机厂商的快应用发展迅速:
在 3 月 20 日的 2019 快应用开发者大会上,一岁的快应用联盟交出一份成绩单:快应用已覆盖 10 亿设备,月活 2 亿,用户一共打开快应用 20 亿次;有 2 万个开发者注册,其中认证开发者为 1 万,提交的快应用有 1100 个。
相比小程序,快应用有 12 大厂商装机支持、入口场景众多的优点,是开发者不容忽视的新技术趋势。目前 AI 已应用到各行业,而快应用结合 AI 技术共同助力快应用开发者。
作为 2019 AI ProCon 【AI+小程序】专场的演讲嘉宾,CSDN(ID:CSDNnews)采访了小米资深软件高级工程师,快应用框架技术总负责人杨亮,给我们分享作为快应用联盟的重要一员小米,他们在 AI+快应用的技术上有怎样的技术经验总结和未来发展方向等干货经验。
快应用与系统深度整合,提供灵活的卡片形态
据杨亮介绍,早在 2016 年底,小米快应用已正式立项。目前在小米手机上,快应用已经和系统深度整合,提供了包括智能助理、全局搜索、应用商店、浏览器等多个系统级入口,给用户良好的使用体验。并且快应用作为一项技术,在小爱同学、计算器等应用里,也得到良好的应用。
与其他小程序相比,快应用框架有以下三大优势:
1、渲染方式不同。其他框架选择 WebView 渲染,快应用使用原生控件渲染,因而实现难度会更大,但是在使用上也会更加流畅;
2、和系统深度整合。快应用是内置在手机上的,可以更好地和系统做深度整合。比如支持从网页中打开快应用,可以更方便地留存桌面图标。
3、独有的卡片形态。快应用有一个新的卡片形态,这是其他框架尚未支持。卡片是快应用一个很灵活的能力,可以将一个应用的部分功能嵌入到另一个应用中,协同提供服务,产生1+1大于2的效果。
AI+快应用,助力开发者
杨亮表示,传统应用受分发和能力的限制,很难符合用户期望。为了解决这难题,快应用引入 AI 来帮助用户获得快捷、精准的服务。
那 AI 又如何助力快应用开发者呢?
1、快应用使用的是基于 JS 的开发框架,入手快,开发成本低;
2、快应用提供丰富的组件和功能,将来还会和手机的 AI 能力深度整合,可以开发出强大易用的服务;
3、快应用分发非常快,还有灵活的卡片模式,可以让服务无处不在,更易被用户使用;
4、快应用会提供多设备的支持,实现一次开发,多处服务。
一套设计方案,各设备运行
在技术实现上,杨亮表示快应用的特点是体积比较小,在分发上有先天优势。同时快应用还采用了流式加载、应用分包、智能缓存等技术,进一步加快了快应用的分发速度,实现即点即用。
快应用是一套完善的开发框架,拥有完善的组件和功能集合,可以实现各种需求。AI 也是快应用非常重视的一个领域,小米正不断扩展AI能力,并且会充分利用系统内置的优势,让快应用能充分利用设备的 AI 能力。
快应用卡片形态重用了应用形态的主要运行逻辑,并且为卡片形态做了各种优化:
1、设计和实现了卡片 SDK,方便被其他应用集成;
2、宿主可按需定制卡片的组件和功能集合,以解决交互冲突和隐私等问题;
3、 增加了卡片和快应用、宿主应用的通讯机制和兼容机制。
小米有众多的 IoT 设备,将来很多设备都会支持快应用。小米快应用将会设计一套方案,让快应用可以很容易的在各种设备上运行,并拥有一致的体验。
AI+小程序、AI+快应用,孰优孰劣?
目前小程序也有结合 AI 的应用落地,对此杨亮表示,小程序里的 AI 功能,多数是使用服务器端的 AI 能力,小程序本身内部的 AI 部分还比较少。
相比其他小程序框架,快应用的下面这些特点,更加适合 AI 服务的落地:
1、快应用支持卡片,可以与场景融合的更加紧密,体验更好;
2、快应用与系统深度整合,可以在语音助手和桌面等场景下,用更短的路径推荐服务;
3、小米拥有强大的生态链,可以将快应用覆盖到电视等更多的设备上。
杨亮还表示,小米正在评估快应用生态对 AI 的需求,希望后续能将小爱同学等现有的 AI 能力与快应用结合,打造有趣的应用。并且正在考虑引入TensorFlow 等流行的 AI 框架,以及快应用支持 AR、VR 等技术。
快应用不会取代 App
目前快应用支持装机服务,且即点即用,给用户带来便捷的使用体验。所以有人会认为,快应用将会取代 App。
对此,杨亮表示如同网页应用没有完全取代 PC 应用,快应用也不会完全取代原生应用。对于一些特别复杂、特别底层、安全性要求非常高的应用,还是会采用原生应用实现。但是对于大多数应用,随着快应用生态越来越成熟,会出现越来越多的快应用实现。
未来:探索快应用在 IoT、车联网的应用
谈及未来快应用的技术发展,杨亮表示从以下三方面入手:
1、推进卡片模式和服务分发。随着AI的兴起,应用开发会向服务开发转向,服务分发是未来的发展方向,而卡片是服务非常好的承载模式;
2、加强快应用和AI的结合;
3、探索在 IoT 和车联网等新领域的应用。
最后,杨亮表示快应用拥有即点即用、卡片化、功能强大等特点,使快应用更适合碎片化的服务分发,希望快应用能在应用向服务转型的过程中,帮到更多的开发者和用户。同时希望快应用可以在 IoT 和车联网等领域得到应用,为产业做出更大的贡献。
杨亮简介:
小米资深软件高级工程师,快应用框架技术总负责人。2013 年加入小米,有着丰富的 Android 系统和应用的设计和研发经验。从 2016 年开始至今,负责了快应用引擎多个版本的发布。现阶段正探索快应用在更多场景和设备上的落地。
还想继续听杨亮分享小米快应用的技术,现在你的机会来了!
杨亮将作为 2019 AI ProCon 【AI+小程序】专场(官网:https://aiprocon.csdn.net/)的演讲嘉宾!详情可点击了解~
AI ProCon 大会优惠票限时抢购中!识别海报二维码,即刻购票~
推荐阅读
字节跳动李航:自学机器学习,研究AI三十载,他说AI发展或进入平缓期
2019 AI ProCon日程出炉:Amazon首席科学家李沐亲授「深度学习
读完ACL 2019录取的30篇知识图谱论文,我发现了这5点趋势
如何用知识图谱挖掘商业数据背后的宝藏?
腾讯AI开源框架Angel 3.0重磅发布:超50万行代码,打造全栈机器学习平台
教你阅读CPython的源码
安装Python/PyCharm,入门级爬虫案例 | Mac下玩转Python
Python冷知识,不一样的技巧带给你不一样的乐趣
互联网人职业发展之路:三年升高工,七年做架构,十年送外卖
IT公司老板落水,各部门员工怎么救?
相关文章:

跨域的四种方式
本文主要是关于跨域的几种方式,关于什么是跨域这里就不多说了,写这个也是为了记住一些知识点的。 一. jsonp jsonp的跨域方式很容易理解,页面的的每一个script标签浏览器都会发送get请求获取对应的文本资源,获取到了之后ÿ…

使用模式创建一个面向服务的组件中间件
引言 在本文中,您将了解面向服务的组件中间件在用于资源有限的语音设备时,在设计阶段所应用的模式。它涵盖了项目的问题上下文,并被看成是一组决定因素,是对相关体系结构远景的一个简要概括。您还会得到一份描述,其中介…

OpenCV代码提取:遍历指定目录下指定文件的实现
OpenCV 3.1之前的版本,在contrib目录下有提供遍历文件的函数,用起来比较方便。但是在最新的OpenCV 3.1版本给去除掉了。为了以后使用方便,这里将OpenCV 2.4.9中相关的函数给提取了出来,适合在Windows 64bits上使用。directory.hpp…

姚班三兄弟3万块创业八年,旷视终冲刺港股
作者 | 余洋洋 杨健楷编辑 | 张丽娟来源 | CV智识(ID:CVAI2019)旷视此次 IPO 或将成为整个 AI 行业的信号,不只是“ 四小龙”的另外三家——商汤、依图、云从,整个 AI 行业的创业公司都将受到影响。8月25日晚,AI 独角兽…
Java类加载器详解
Java虚拟机中的类加载有三大步骤:,链接,初始化.其中加载是指查找字节流(也就是由Java编译器生成的class文件)并据此创建类的过程,这中间我们需要借助类加载器来查找字节流. Java虚拟…

linux svn客户端的使用
一下内容转载于:http://blog.chinaunix.net/space.php?uid22976768&doblog&id1640924。这个总结的很好~ windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用&…

C++中vector的使用
向量std::vector是一种对象实体,能够容纳许多各种类型相同的元素,包括用户自定义的类,因此又被称为序列容器。与string相同,vector同属于STL(Standard Template Library)中的一种自定义的数据类型,可以广义上认为是数组…

说出来你可能不信,现在酒厂都在招算法工程师
导语:虽然夏日已过,但人们喝啤酒的热情还在持续高涨。不过随着大众的追求和理念提升,对于啤酒的要求也越来越高,比如逐渐兴起的精酿之风,都在印证人们在啤酒的口感和风味上,拥有更加「苛刻」的要求。那么这…
「前端面试题系列7」Javascript 中的事件机制(从原生到框架)
前言 这是前端面试题系列的第 7 篇,你可能错过了前面的篇章,可以在这里找到: 理解函数的柯里化ES6 中箭头函数的用法this 的原理以及用法伪类与伪元素的区别及实战如何实现一个圣杯布局?今日头条 面试题和思路解析最近,…

安装Ecshop首页出现报错:Only variables should be passed by referen
出现下面这就话: Strict Standards: Only variables should be passed by reference in D:\wamp\ecshop\includes\cls_template.php on line 406 第406行:$tag_sel array_shift(explode( , $tag)); 解决办法 1 5.3以上版本的问题,应该也和配…

KDD 2019高维稀疏数据上的深度学习Workshop论文汇总
作者 | 深度传送门来源 | 深度传送门【导读】本文是“深度推荐系统”专栏的第九篇文章,这个系列将介绍在深度学习的强力驱动下,给推荐系统工业界所带来的最前沿的变化。本文简要总结一下阿里妈妈在 KDD 2019 上组织的第一届面向高维稀疏数据的深度学习实…
C++中fstream的使用
C中处理文件类似于处理标准输入和标准输出。类ifstream、ofstream和fstream分别从类 istream、ostream和iostream派生而来。作为派生的类,它们继承了插入和提取运算符(以及其他成员函数),还有与文件一起使用的成员和构造函数。可将…

浅谈Disruptor
Disruptor是一个低延迟(low-latency),高吞吐量(high-throughput)的事件发布订阅框架。通过Disruptor,可以在一个JVM中发布事件,和订阅事件。相对于Java中的阻塞队列(ArrayBlockingQueue,LinkedBlockingQueue),Disruptor的优点是性…

web 服务发布注意事项
1、在发布的时候首先查看服务器对外开放的端口,如果没有最好和客户进行沟通需要开放那些对应的端口,要不外界无法访问发布的站点。 2、在oracle需要远程控制服务器的数据库的时候需要开发1521端口。转载于:https://www.cnblogs.com/jzm53550629/p/337563…

OpenCV代码提取:resize函数的实现
之前在http://blog.csdn.net/fengbingchun/article/details/17335477 中有过对cv::resize函数五种插值算法的介绍。这里将OpenCV3.1中五种插值算法的代码进行了提取调整。支持N通道uchar和float类型。经测试,与OpenCV3.1结果完全一致。实现代码resize.hpp࿱…

IBM重磅开源Power芯片指令集?国产芯迎来新机遇?
整理 | 郭芮出品 | CSDN(ID:CSDNnews)自去年 IBM 以 340 亿美元收购了 Linux 巨头红帽之后,这家 107 岁的蓝色巨人终于又在开源方面有大动作了!近日在 Linux 基金会开源峰会上,IBM 宣布向开源社区提供 Powe…

构造函数不能为虚/重载函数总结
构造函数不能为虚/重载函数总结 作为一个类,他最基础的成员函数就要数构造函数了。这里我们先探讨一下构造函数为什么不能是虚函数。 在解决这个问题之前,要先明白类中函数的调用方式。一个类的函数共用一个函数空间,因此在实例化的对象中是不…

通过data:image/png;base64把图片直接写在src里
2019独角兽企业重金招聘Python工程师标准>>> 关于用base64存储图片 网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZS…

算力“竞速”,企业AI落地的当务之急
充足的算力资源,在数据量持续增长及算法持续复杂化的前提下,无疑是保障人工智能应用落地效果的关键。软件定义算力——打造AI转型最佳实践8月2日,第四范式联合英特尔共同举办了AI实践者之声夏令营活动。第四范式基础架构负责人刘一鸣以《软件…
内存检测工具Dr. Memory的使用
Dr. Memory是一个内存调试工具,它是一个开源免费的内存检测工具,它能够及时发现内存相关的编程错误,比如未初始化访问、内存非法访问、数组越界读/写、以及内存泄露等。它可以在Linux、Windows、Mac OS和Android操作系统上使用。关于Dr. Memo…
手把手教你如何新建scrapy爬虫框架的第一个项目(下)
前几天小编带大家学会了如何在Scrapy框架下创建属于自己的第一个爬虫项目(上),今天我们进一步深入的了解Scrapy爬虫项目创建,这里以伯乐在线网站的所有文章页为例进行说明。在我们创建好Scrapy爬虫项目之后,会得到上图…

.net完整的图文验证
摘自:http://blog.csdn.net/durongjian/article/details/4336380 一、创建ValidaeCode类库工程: 1、创建ValidaeCode类库工程,在[解决胜方案资源管理器]面板中,右键单击[ValidateCode]节点,并选择[属性]命令。 2、单击[属性]命令&…

Tesseract-OCR 3.04在Windows7 vs2013上编译过程
从https://github.com/tesseract-ocr/tesseract下载最新源码,commit id: 86acff5, 2016.06.07. 里面有个vs2010目录,用vs2013打开tesseract.sln。Tesseract依赖图像库Leptonica,Leptonica的编译过程可以参考http://blog.csdn.net/fengbingchun/article/d…

【Laravel-海贼王系列】第九章, Events 功能解析
Events 注册 框架如何在启动的时候加载注册的事件?框架如何触发事件?1,先在容器中注册 events 的全局对象。 Application 构造函数中对 events 进行注册代码 protected function registerBaseServiceProviders(){$this->register(new EventServiceProvider($th…

触类旁通,经典面试题最长公共子序列应该这么答
作者 | labuladong来源 | labuladong(ID:labuladong)【导读】最长公共子序列(Longest Common Subsequence,简称 LCS)是一道非常经典的面试题目,因为它的解法是典型的二维动态规划,大部分比较困难的字符串问…

两分公支的IPSec***流量走总部测试
一.概述:在论坛上看到一个朋友发帖希望两个分支的IPSEC ***流量经过总部,如是搭建拓扑测试了一下,因为跑两个VM版的ASA8.42机器性能不过,所以用PIX8.0来代替ASA,应该主要配置都跟ASA8.0差不多。二.基本思路:A.两个分支…

OpenCV代码提取:cvtColor函数的实现
OpenCV中的cvtColor函数包括了很多颜色格式之间的转换,用起来很方便,这里对cvtColor函数的code进行了提取,经测试,和OpenCV3.1结果完全一致。实现代码cvtColor.hpp:// fbc_cv is free software and uses the same licence as Open…

关于java.util.LinkedHashMap cannot be cast to ......的解决办法
今天在项目中遇到一个问题,接口接收到list在对list进行遍历的时候报出如下错误: 断点看一下这个list感觉没有任何的问题: 那为什么会报这个错误呢 这个接口是这样的,在想会不会是json在转list的时候把这个list给整坏了。 于是,我把这个list再…

三两下实现NLP训练和预测,这四个框架你要知道
作者 | 狄东林 刘元兴 朱庆福 胡景雯编辑 | 刘元兴,崔一鸣来源 | 哈工大SCIR(ID:HIT_SCIR)引言随着人工智能的发展,越来越多深度学习框架如雨后春笋般涌现,例如PyTorch、TensorFlow、Keras、MXNet、Theano 和 PaddlePaddle 等。这…

大学计算机基础实验
下载2013算法实验报告.rar转载于:https://www.cnblogs.com/shajianheng/p/3381968.html