展望5G时代APP的新形态

454 阅读5分钟


5G时代已经到来,现在人们大多都是讨论5G下的App应用会出现怎么样的变革,比如AI、AR、云计算之类。高网速低延迟的网络环境对移动应用会产生质变,同时也会改变App的形态。可能有人会问APP不就是安卓和IOS上下载安装的软件么,能有什么变化?的确对于用户来说应用是怎么开发和实现的使用效果都没有差别,但作为开发人员对于这类变化还是需要有敏锐的感知。

站在4G和5G更替的时间点上,我们可以先回顾下5G之前移动通信技术的升级对APP形态的影响,再大胆展望下5G时代“新APP”。

2G时代 原生APP

2G已经过去快20年了,大家回忆下自己拥有了自己第一款智能手机,小小的屏幕配上大大的键盘,上课时悄悄发QQ、被窝里偷偷看小说,这就是2G的时代。那时的APP都是出厂自带的系统应用和基于原生IOS安卓开发的应用,很多开发人员都是后端兼任或者转过来的。安卓使用Java开发、IOS使用Objective-c,大家一贯以来认为的APP就是这种。

3G时代 混合开发

进入3G时代,网速不再像2G时代那样缓慢,一种新型的APP开发方式出现了,那就是混合开发。它主要是为了实现跨平台开发的能力,使应用能在多端保持一致。混合开发本质上就是原生开发与网页开发相互结合的方式,经过了漫长的升级进化过程,也有多种不同的实现形式。

目前主要的混合开发方式大概有三类:

第一类是H5页面加原生的壳,最初是使用原生WebView打开网页,需要使用原生能力时需要通过JsBridge来进行桥接。成熟的封装框架代表有基于AngularJS的Ionic、基于VueJS的Uni-app还有基于浏览器的PWA(Progressive Web App)等。

第二类是JS代码加原生的壳,App使用JS编写代码,在编译和运行时候会把对应的UI映射成原生渲染,优化了第一种渲染性能的问题。以React Native和Weex为代表,是目前比较主流的方案。

还有一类自成一派,叫自绘UI。是通过在不同平台实现统一接口的渲染引擎来绘制 UI,这样可以保证不同平台展示的一致性。不用像第二类一样,依赖不同平台的原生能力,导致展示和功能在不同平台会有差异。代表有早期的Qt 和 当前比较火的Flutter。

4G时代 小程序

如果形容3G的网速是开汽车,那4G的网速好比是坐火箭了,应用的下载到达秒级。以这个网速应用完全可以实时安装。于是微信提出了小程序的概念,使得应用无需下载即可使用,脱离了原生安装包的束缚,对原来牢牢控制住安装流量的各大应用分发市场造成巨大冲击。虽然前期由于兼容性、接受度等问题并没有传播的很快,但是到目前微信小程序已经形成完整的生态,在某些领域已经能和安装的应用平分秋色甚至更胜于蓝。

目前各个流量入口都在小程序这块领域上攻城略地,出现如支付宝、百度、抖音等小程序,手机厂商也推出了类似小程序的快应用。小程序的诞生源于混合开发,只是将APP外壳改为微信支付宝等应用,虽然只是一个小小的改变却实现了应用“触手可及”的梦想。小程序对于开发者能节约开发和推广成本,对于用户能够节约使用时间成本和手机内存空间。

就目前来看小程序和APP的关系是互为补充的,它打通了微信、支付宝等的流量入口,使应用更加容易的引流获客,降低了用户体验部分核心功能的门槛。小程序的劣势在于不能实现原生那些相对复杂的功能,交互相对繁琐的重服务,所以原生和混合应用任然有不可替代的作用。

5G时代 云应用

过去的原生开发想象不到写网页的能统一三端,而到现在小程序都可以不再依赖app外壳了。如果要展望5G的发展,我认为云应用一定会大放异彩,把传统软件本地安装、本地运算的使用方式变为于网络连接并操控远程服务器集群,完成业务逻辑或运算任务的一种新型应用。优化了小程序首次加载慢、无法实现原生性能的缺点,同时不再依赖设备性能,而只依赖网络速度,可以发挥出5G的优势。这使得VR、AR、大型游戏这类需要大空间吃性能的应用,可以在任意移动设备上运行,比如百元智能机、车载导航、家电等等。当移动应用能脱离手机在任何设备中运行时,摆脱手机计算能力和电池技术的瓶颈,世界将进入真正的开启万物互联时代。

目前云应用已经有些落地的案例,但大多都是用云游戏方向,而且对网络速度和稳定性的要求很高,使用场景被限制在需要良好WIFI的场所。随着5G网络的铺开,必定会孕育出更多的云应用软件场景。

虽然目前已经是在4G时代的末期,5G时代的开端,但不出意外我们还是会同时享受过去的成果,就像原生开发和混合开发仍然占据很大比重。各类应用形态都有其适用场景,不会一方独大,5G时代最终会给我们带来什么,就让我们拥抱变化,未来可期。