应用号,传统APP的革命?

    阅读模式

微信要做应用号了,无需下载安装就可以使用的APP,一时间做传统APP的产品都是闻之色变。

可这应用号到底是什么鬼,居然能悬起如此大波澜?虽然应用号的很多细节没有透露,不过我们可以借此畅想一下它的实现以及可能用到的技术。

应用号,传统APP的革命?

我们知道传统APP发展到今天已经过于笨重,作为一个独立的APP产品来说或许感受不到这点,而作为用户来说,APP之间的重叠区域越来越重。不同的APP除了能够提供自己独有的特色服务外,基本的能力都差不多,支付功能,消息推送,语音,扫码...

从理论上来讲,如果有一个APP拥有足够多的能力,且用户量足够大的话,其他APP只需要使用它的能力,然后提供自己特色的服务就足够了。微信做这个载体是很合适的。那么如何能在微信里面做应用呢,微信又可能用到哪些技术呢?

Js2Java。网页通过js接口调用微信的native能力。微信本身的基础能力已经很完善了,它只需要将自己的能力封装成js调用的接口,那么应用开发者们只需要做一些前端页面的开发,并在服务器上部署好自己的服务就好了。这种方式在微信里面本身也运作的比较好了,例如微信里的滴滴出行,它使用了微信的帐号,push,定位,支付等能力,完成近乎native的体验(我也因此删掉了滴滴出行的客户端)。(详见历史文章“网页和原生App如何交互”)

插件模式。这种方式允许开发者有更强的native界面控制能力,可以避免前端页面开发的界面手感不好的问题。同样,要做成插件模式也需要微信将它的能力封装成原生接口,开发者这针对这些接口进行应用开发,完成后的APP通过微信的插件框架加载起来。整个APP的下载,安装,更新通过插件体系可以做到无感知。不过这样开发者难免需要在不同的平台上编码了(Android,ios,wp)。(详见历史文章“妈妈再也不用担心我的需求赶不上版本发布了”)

React Native。这个是脸书搞出来的一套开发原生APP的框架,这套框架本身的核心就是Js2Java,它屏蔽了开发平台的差异,开发者只要会前端开发,就可以只写一套代码,通过这套框架构建不同平台的native界面。微信只需要把自己的能力封装到这套框架中供开发者调用,有趣的是整个APP的运作形式更接近与插件模式。简单说就是开发者用React Native的框架编使用前端语言编写代码,最后打包成不同平台的插件在微信发布即可。(详见历史文章“React Native-目前最火的前端技术”)

这三种方式都可以在微信里做一个免安装,随时可更新的APP。这对APP开发来说是好事(不需要自己再搞一套帐号体系,push系统,支付体系),一切能力由微信提供,APP只需要专注于提供特色的服务就足够了。

当然,或许微信这些已经都做好了,创建一个应用号对微信来说只需要在桌面创建一个快捷方式而已...

几种常用的PCB表面处理工艺及其优缺点 pcb设计

几种常用的PCB表面处理工艺及其优缺点

几种常用的PCB表面处理工艺及其优缺点和适用场景 我们在画好PCB后,将其发送给PCB板厂打样或者是批量生产,我们在给板厂下单时,会附上一份PCB加工工艺说明文档,其中有一项就是要注明选用哪种PCB表...
金百泽Allegro Skill工具长期使用方法 pcb设计

金百泽Allegro Skill工具长期使用方法

前几天有网友问,他一直在用的金百泽的EDA Skill工具提示过期不能再了,怎么破?这个金百泽的EDA Skill工具提供了一些了好用的Allegro扩展功能,能极大提高PCB Layout设计效率,...
PCB之器件相邻的焊盘间走线 pcb设计

PCB之器件相邻的焊盘间走线

对于QFP、QFN、SOP等小引脚间距SMT元器件的Layout,有时候我们会遇到该类元器件相邻Pin脚之间需要网络互联的情况。 发现很多同学图省事,直接在焊盘中间走线将pin脚短接。如下图所示   ...