简介
uni小程序SDK是为原生App打造的可运行基于uni-app开发的小程序前端项目的框架,帮助原生App快速获取小程序能力,实现一套代码多端运行。
基本概念
首先了解uni-app,它是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码可发布到H5、各种小程序及Android、iOS App。uni小程序SDK则提供让原生应用变身宿主的能力,集成后能以小程序形式运行和管理uni-app框架开发的小程序前端项目,支持Android和iOS平台。对于uni-app x项目,目前仅Android平台支持,需通过uni-unimp插件集成。
关键名词包括:宿主指集成SDK的原生App或uni-app x应用;小程序指运行在宿主中的uni-app前端项目;wgt是uni-app项目导出的小程序应用资源包;HBuilderX是开发uni-app的IDE工具。
注意:uni小程序SDK仅支持使用uni-app开发的小程序,且需使用v3编译器,不支持纯wxml微信小程序运行。
特色
uni小程序SDK在性能和功能上表现优异。性能方面,与uni-app的app端v3编译器相同,在启动速度、页面加载和通信优化上优于市面其他引擎;功能上,提供比微信小程序更丰富的API,支持完整app开发,无包体积限制,并可调用所有原生能力。此外,依托uni-app插件市场,拥有大量插件生态。
应用场景
主要应用场景包括:宿主App构建自己的应用生态,面向广泛或定向开发者;原生App利用小程序模式对模块解耦,实现独立团队开发和灵活更新;原生App中部分功能使用uni-app实现以降低开发成本(但复杂模块启动可能较慢,推荐使用uni-app x原生SDK)。
集成流程
对于原生App,集成流程如下:宿主开发者下载并集成uni小程序SDK;小程序开发者使用HBuilderX创建和开发uni-app项目,测试后导出wgt包;宿主将wgt包集成到App中,可离线或在线部署;通过SDK API部署资源并跳转到小程序;支持wgt热更新。
对于uni-app x应用,可通过uni_modules插件形式引入uni小程序SDK。
注意
重要注意事项:uni小程序SDK仅支持在原生App或uni-app x应用中集成,不支持HBuilderX打包的uni-app应用;支持同时运行多个小程序实例,但Android平台最多打开三个;无法使用插件市场中付费的原生插件。
案例
众多应用已成功集成uni小程序SDK,例如CSDN App、顺丰速运、国家医保服务平台等,用于内部栏目或功能模块的小程序化。
FAQ
Q:uni小程序SDK与App离线SDK的差别是什么?
A:两者解决不同场景:uni小程序SDK用于已有原生App扩展小程序能力或替换功能模块,仅支持uni-app v3编译器;App离线SDK用于无原生App时开发发布App,支持5+ App和uni-app,但自从uni小程序SDK推出后,不推荐集成到已有原生App。
Q:uni小程序SDK的js API与微信小程序相比如何?
A:uni小程序SDK的js API更丰富,功能接近正常app,无包体积限制,支持更完整开发。文档和演示可参考uni-app官网。
Q:集成uni小程序SDK会增加APK体积多少?
A:如果仅集成基础模块,APK体积增加约7MB到16MB,具体取决于CPU架构选择。
Q:uni小程序基座与标准HX基座权限有何变化?
A:权限基本一致,uni小程序基座增加了一些权限以支持创建桌面快捷方式。