小程序技术实践:快速开发适配鸿蒙的App

今年,在中国,被各大媒体和开发者称为"鸿蒙元年"。

在2023年底就有业内人士透露,华为明年将推出不兼容安卓的鸿蒙版本,未来IOS、鸿蒙、安卓将成为三个各自独立的系统。

果不其然,执行力超强的华为,与2024年1月18日的开发者(HDC)大会上,就官宣了"纯血鸿蒙"操作系统即将于2024年3季度正式投产。与此同时,支付宝、京东、小红书、微博、高德地图、中国移动等在内的超百个头部应用都启动了鸿蒙原生应用开发,鸿蒙开发者日新增注册量已过万,同时众多985、211高校接连开设HarmonyOS相关课程。

鸿蒙生态发展已势不可挡。

摆在企业面前的"一道坎"

**"时间紧、任务重、资源少、基数大"**等四座大山摆在了企业的面前。

据2023年Q4中国手机市场数据来看,华为手机激活量为1146.57,以市场份额15.3%排名第三位。这意味着,在销售的新机当中,搭载鸿蒙系统的占比至少有15%。

如果华为的"纯血鸿蒙"操作系统正式推出,那么没有就绪的企业,很有可能会失去中国15%(甚至更多)的移动互联网的用户市场份额,这个业务量,估计换企业的任意一个部门都是无法承担的后果。

但如果按照鸿蒙原生开发的"套路"去一步步开发鸿蒙版App,就好比中国人学外语一般,开发者还得从0开始学习新的技术语言(ArkTS语言),可能时间窗口就错过了...

有没有一些「Magic Word」能够让上述"四座大山"快速抹平?笔者在本篇文章中建议使用混合App开发的思路去开发鸿蒙版App。

「Native+H5」和「Native+小程序」两种混合式APP开发模式相比之下,「Native+小程序」的开发模式更优。

应用优势:

从2017年微信首次推出小程序开始,经过四年发展,各大互联网巨头纷纷推出自己的小程序应用平台,小程序成为真正意义上的"互联网新技术标准"。截至2021年上半年,全网小程序数量突破700万个,其中,微信小程序是行业主流,数量超过430万个,占比高达约61.43%。

借着微信的红利,使用"小程序转换工具"(小程序容器技术,如FinClip;或跨端框架,如Flutter、Weex等),将已有微信小程序一键转换成App,并进行用户活跃和留存,加上社交平台应用作为引流,企业可谓低成本(只需有小程序)的将业务覆盖用户整个生命周期。

技术优势:

  • 具备跨平台的能力,一套代码可以在 iOS 与 Android 两个平台中运行;

  • 远超过 H5 的体验(支持本地缓存,Webview,有丰富的组件与支持库);

  • 能获取更多系统权限,完成更加丰富的产品设计;

  • 可以避免 DOM 泄露(不使用常用的 window 对象与 document 对象);

  • 包尺寸有效减少,节省流量和存储

  • 服务不再受发版所限制,支持热更新小程序容器技术加入到混合App开发主流队列

将小程序转成App的开发实例

近期在研究FinClip的免费"小程序转换App"工具,发现还挺好用,大致步骤如下:

  1. **上传小程序代码包:**如果已经有微信小程序应用,那么下载一下他们家的FinClip Studio(IDE开发工具)进行简单的转换。

  2. **使用微信登录插件:**已经预先调试好的微信登录插件,非常方便,能够在转好的App中,通过一个中间转换的小程序调起微信登录接口,快速跑通业务。

  3. **生成App前必要的配置:**如App图标、启动闪屏、权限配置等

  4. **生成App:**配置一下对应IOS或Andriod的证书,然后「一键」生成App

实操下来,这个工具还是挺方便的。当然,其他跨端转换框架应该也是操作便捷,感兴趣的同学都可以试试。

将小程序转换为App,如果小程序容器技术支持鸿蒙NEXT版本,那么,使用已有小程序+转换App的功能,便能快速开发出一套适配兼容鸿蒙NEXT操作系统的App。

可能有一些中大型企业的开发同学会问,那还是没有解决已有的App鸿蒙化。但换位思考,其实是优先级的问题,如果现在留下来给我们的时间不多了,是不是需要将App鸿蒙化的改造排个优先级?先把关键的、需要适配的核心功能,自研团队集中精力适配了,其他业务场景,重要的通过小程序化改造,或者让第三方开发商提供小程序的版本,以极低的门槛植入到App中,先保证关键业务能在鸿蒙NEXT中运行,后面再慢慢改造边缘场景,是不是至少是个保底的方案?

借助已有的小程序基础,通过跨平台框架快速推出原生App,降低了开发和维护成本。通过最小化投入,开发者可以迅速将产品推向市场,测试其受欢迎程度和商业可行性。这种敏捷的开发方法有助于及早发现并解决问题,为进一步的优化和扩展奠定基础。

相关推荐
dccose1 小时前
vue3 uniapp 扫普通链接或二维码打开小程序并获取携带参数
小程序·uni-app
踏雪Vernon3 小时前
[OpenHarmony5.0][Docker][环境]OpenHarmony5.0 Docker编译环境镜像下载以及使用方式
linux·docker·容器·harmonyos
想自律的露西西★5 小时前
用el-scrollbar实现滚动条,拖动滚动条可以滚动,但是通过鼠标滑轮却无效
前端·javascript·css·vue.js·elementui·前端框架·html5
尘浮生7 小时前
Java项目实战II基于微信小程序的校运会管理系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
Andy醒7 小时前
HarmonyOS . 沉浸状态栏使用
harmonyos·鸿蒙
yuwinter7 小时前
鸿蒙HarmonyOS学习笔记(2)
笔记·学习·harmonyos
ZZZCY20038 小时前
华为ENSP--IP编址及静态路由配置
网络·华为
hummhumm8 小时前
第 28 章 - Go语言 Web 开发入门
java·开发语言·前端·python·sql·golang·前端框架