写点什么

用一套代码实现 APP 和小程序

用户头像
Speedoooo
关注
发布于: 刚刚

长期以来,移动互联网界一直在寻找一种既能获得 Native 原生的体验,又可以低门槛快速开发的技术。在这个过程中出现了很多尝试,例如 React Native(RN),RN 本质上是轻量化 Native 开发,在 Native 基础上做减法;H5 的特点是开发成本较低,可以做到比较灵活,但缺点在基础信息获取方面(如地理位置、手机信息、播放器等)和顺滑体验方面无法做到 Native 的效果。 在这个背景下,微信小程序也给出了自己的方案,它的做法是在 H5 的标准上做 Native 能力的加法,赋予了小程序很多 Native 的能力,微信通过自行研发的小程序运行时,为小程序提供了大量的 API 层面能力支持,如地图、导航、画布、滚动视图等方面都能提供支持。 小程序的优越性体现在既保留了 H5 开发的便利和灵活性,又可以达到媲美 Native 体验,配合微信 11 亿用户的社交网络,越来越开发者选择微信小程序的技术。 


小程序的工作原理是什么? 


小程序的出现不是一蹴而就,而是在移动互联网近 10 年的业务、场景积累上逐步发展起来的。Web 开发具有高效、灵活、门槛低的特点,但弊端在于所有的页面都依赖浏览器的渲染,浏览器的能力就是 Web 研发的上限和边界。

为了克服这个问题,于是便有了 JS-Bridge 这种方式,将很多常用组件内置到应用中,当内嵌组件足够多的时候,再做一层封装,形成了 JS-SDK,其本质没有差别。 小程序在 JS-SDK 的基础上,一方面进一步开放和拓展原生的能力给到 Web 前端调用,另一方面,页面渲染(Webview Render)的 UI 层和逻辑层,使用了两个独立的线程。 


什么是小程序运行时?


小程序运行时本质上是一个处理 Web 页面渲染、数据逻辑交互的虚拟机,这个虚拟机提供了丰富的原生能力供小程序调用(API、组件、AI 能力等),极大的拓展了 Web 应用的能力边界,尤其是诸如滚动视图(scrool-view)、导航(navigator)、图片预览(cover-image)等组件的提供,使得前端开发人员使用现有的 Web 前端技术,就可以开发出接近原生体验的应用。 其实微信可以分成两部分:即时通讯部分(IM)和小程序的运行渲染引擎(运行时)。小程序的运行离不开运行时,它作为一个基础支撑已经深度和微信整合。正是利用了微信 11 亿的巨大的社会协同网络,赋予了小程序方便的转发、分享能力,为商业应用创造了一个崭新的蓝海,所有人都可以利用这个平台去更好地触达、服务客户。 


当你获得这么一个引擎,你会如何改造你的 APP? 


以往业务部门要发布一些新的功能的时候,用户必须要主动更新 APP,而且任何一个局部功能的变化升级需要去重新去应用市场再操作一次,成本很高。由于并不是所有的用户都去更新,造成 IT 团队需要花费大力气去维护多个不同的版本。这种方式造成用巨大的资源浪费和用户体验的不便利。 如果用小程序,这个问题会迎刃而解。


首先,小程序可以独立地去更新,APP 成为了一个载体,很长的一段时间内,不需要被频繁更新。其次,每个小程序可以按照业务具体需要去独立发布各自的版本,不同的小程序之间的更新升级彼此独立、互不干扰。最后,由于小程序运行的沙箱机制,保证了不论是哪个小程序出现 Bug、崩溃等情况,不会拖累应用本身,即便出现严重问题,也不过就是把它下线即可。 


看得见的高效,一个人也能敏捷开发移动应用


微信刚推出小程序时,只有阿里、百度和字节跳动等巨头跟进。有人可能因此觉得小程序类技术是互联网巨头们的专属。但事实是,技术发展非常迅速,现在任何公司或者个人都可以轻松地为自己的 APP 赋予运行小程序的能力。因为第三方“小程序开放平台”提供了成熟的解决方案。


例如凡泰极客推出的“FinClip 小程序开放平台”,它可协助企业快速搭建稳健开放的移动应用,有效降低了企业对于移动应用的研发成本,以及提升研发效率。


前文介绍了微信通过自行研发的小程序运行时,为小程序提供了大量的 API 层面能力支持。这里的小程序运行时,可以理解为“小程序运行能力”,它作为小程序运行的环境,为小程序提供安全沙箱、代码解析和渲染等服务。 为了让更多 APP 轻松拥有“小程序运行能力”,凡泰极客将“小程序运行时”实现成一个可私有化部署的 iOS 和 Android 版本的 SDK,可以被第三方集成。也就是说,任何 APP 通过嵌入 FinClip 小程序 SDK 即可瞬间获得运行小程序的能力。

仅需 5 行代码,即可让你的 APP 快速启动和运行小程序,而且小程序运行时 SDK,Android 端 1.3 兆,iOS 端 1.8 兆,轻量无感,同时 SDK 采用多线程运行方式,极端情况下也不影响宿主 APP 的安全稳定运行。 快来体验吧~现在注册,即可免费上架 99 个小程序


用户头像

Speedoooo

关注

还未添加个人签名 2021.10.08 加入

还未添加个人简介

评论

发布
暂无评论
用一套代码实现APP和小程序