这是我参与「第五届青训营 」伴学笔记创作活动的第21天。
跨端技术概括
跨端背景
PC端(Windows、Mac)、移动端(安卓、ios)、web端、IoT设备(车载设备、手表)...
常见痛点:
- 各端功能几乎一致,各端需要单独配置研发人员
- 开发、维护成本高
- 安卓、ios发版周期长
方案目标
- 研发效率高
- 学习成本低
- 多端一致性高
- 用户体验好
- 稳定性高
- 性能体验好
- 动态化
- 支持动态化下发
- 满足日益增长的业务需求
方案介绍
hybird方案
基于WebView渲染,通过JS Bridg把一部分系统能力开放给JS调用
原生渲染方案
- 使用JS开发,通过中间层桥接后使用原生组件来渲染UI界面
React Native 是一个由Facebook于2015年9月发布的一款开源的JavaScript框架,它可以让开发者使用JavaScript和React来开发跨平台的移动应用
自渲染方案
- 利用Skia重新实现渲染管线,不依赖原生组件
- Flutter是Google在2018年世界移动大会公布的开源应用开发框架,仅通过一套代码库,就能构建精美的,原生平台编译的多平台应用
小程序方案
使用小程序DSL + JS 开发,通过中间层桥接后调用原生能力,使用webview来渲染UI界面 例如:字节小程序
跨端技术方案对比
基于小程序端实现
快速开发一个小程序
- 下载小程序开发者工具
- 小程序开发、调试
- 小程序上传
小程序性能优化
意义
- 留住用户
- 提升转化率
- 提升用户体验
指标
- Loading————>FP————>LCP
- 平台指标看板
WRITE ONCE, RUN ANYWHERE