Skip to content

RN与UNI小程序混编设计

一、背景

公司移动端不同业务线具有许多交叉业务,对于此类业务如果用App开发将增加时间成本,并且发版不灵活,所以将交叉业务用小程序的形式集成到App

二、开发方案对比

开发形式人力成本(耗时)灵活性用户体验
App⭐️⭐️⭐️⭐️⭐️⭐️⭐️
H5⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️
小程序⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️

App版本发布不够灵活,人力成本高,h5的用户体验差一些

人力成本: app>小程序==h5

灵活性: h5>小程序>app

用户体验: app>小程序>h5

三、 混编SDK落地方案对比

调研市场上面的小程序集成方案

FinClip 小程序开放平台mPaaS 移动应用开发平台Unisdk
产品定位轻应用(小程序)平台,专注小程序App 开发、H5 开发、小程序开发一条龙服务uni-app 的生态补充,专注于 uni-app 小程序的集成
小程序技术标准自有小程序标准,兼容对齐微信支付包小程序标准uni-app开发的小程序
是否支持私有化可私有化,掏钱就行专有云客户可私有化开源的
多端支持支持 i0S、Android、Windows、Mac、Linux,国产信创、车载操作系统只支持iOS、Android只支持 iOS、Android
集成之后sdk体积增加2-3M30M左右7-16M
IDE自有 IDE自有 IDEHBuilder
收费标准(来自官网)社区版、SaaS 版不要钱,私有化的要掏钱三种收费模式: 预付费模式、资源包模式、后付费模式,可查看这里不要钱,交个朋友,但是会通过广告联盟和其他运营服务收费,利用开源框架做了一些限制。
渲染技术架构采用与微信一致的逻辑层与渲染层分离架构采用 webview 或者原生渲染(React Native)采用 webview 或者原生渲染(React Native)
客户案例(来自官网)国盛证券、华鑫证券、广发证券、东软...深圳农商银行、怪兽充电、上海地铁、悦刻...CSDN App

最终选用unisdk

uni小程序sdk集成:https://nativesupport.dcloud.net.cn/README

自动化打包:https://uniapp.dcloud.net.cn/quickstart.html#运行、发布uni-app

四、客户端更新流程

image-20220920163946607

五、小程序持续集成

image-20220916003714238

六、版本管理数据库核心字段

参数类型必填说明
appidString小程序的id (exp: UNI__CBDCE04__)
appNameString小程序名 (exp: 农批宝)
versionCodeint小程序应用版本号(exp:10 , 主要的版本更新依据)
versionNameString小程序应用版本名(exp:1.0.0, 主要用于显示)

七、方案落地工作

工作资源备注
App小程序sdk集成汪滔,iOS,安卓1. 原生模块 2. 原生方法 3. 预加载小程序,小程序缓存管理,4. 小程序之间的跳转(默认不行,研究小程序唤起其他小程序,参考健康码打开行程码)
版本管理接口后端upload,checkVersion,listVersion
web管理界面前端版本信息展示,上传
小程序自动化部署汪滔,后端shell脚本,接口 上传wgt ,更新数据库版本记录
小程序基础业务架构搭建汪滔注意版本搭配,并且要支持自动化部署

八、打包出来的文件

image-20220921170215168

九、落地过程中遇到的问题

  1. 第一次去下载,然后走更新流程,不打包在apk中
  2. 检查下载添加fileid字段

上次更新于: