程序员Tom
程序员Tom
  • 发布:2025-12-22 18:53
  • 更新:2025-12-22 19:01
  • 阅读:21

建议自定义uts api插件支持类似uni.xxx或uni.requireNativePlugin方式调用

分类:uts

最近调研uniapp和uniappx,计划将现有项目升级到vue3,支持鸿蒙Next。一些原来原生语言的API插件,考虑使用最新的uts插件方式实现。
目前面临一个问题,所有老项目都是通过cli方式开发的,考虑开发习惯和成本,继续沿用该方式,借助vite插件,可以实现更多定制化功能。

但是 目前仅支持通过HBuilder X 创建和使用UTS插件,不支持通过cli的方式使用UTS插件详见官方文档

查遍文档没有查到官方支持的时间表,不知官方能提供类似 uni.xxx 的方式调用 uts插件,比如 uni.ext.xxxuts.xxx 等。或者像调用原生语言插件那样,通过 uni.requireNativePlugin(PluginName)调用插件,比如 uni.requireUtsPlugin(PluginName)

2025-12-22 18:53 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该问题请在专业群( uni-app x技术交流群 ) 咨询

根据当前uni-app x官方文档和知识库信息,UTS插件仅支持通过HBuilder X创建和使用,暂未开放CLI方式支持,也没有提供类似uni.requireUtsPluginuts.xxx的调用接口。

关键事实:

  1. 调用方式限制
    UTS插件必须通过HBuilder X管理,在.uts文件中以import语法直接调用(例如import { getBatteryInfo } from 'uni-getbatteryinfo'),无法通过uni.xxxuni.requireNativePlugin风格调用。这是由UTS插件的架构决定的,其设计依赖HBuilder X的编译和调试环境。

  2. CLI支持现状
    官方文档明确说明UTS插件"不支持通过cli的方式使用"(参考链接)。目前vite等CLI工具仅能处理前端代码,无法编译或加载UTS插件,因UTS需要HBuilder X的原生环境集成(如Android/iOS/鸿蒙的SDK调用)。

  3. 开发建议

    • 若需使用UTS插件(如适配鸿蒙Next),必须迁移到HBuilder X开发流程,这是官方唯一支持的方式。
    • 对于CLI定制化需求,可考虑:
      • 继续使用旧版uni-app原生插件(仅限App平台,不兼容uni-app x)。
      • 关注后续版本更新(当前正式版4.85,alpha 4.86),但官方未公布CLI支持时间表。
    • 优先在插件市场搜索现成UTS插件(如电量、动画组件),避免自行开发。

总结:

UTS插件是uni-app x的核心能力,但现阶段强制依赖HBuilder X。建议调整开发习惯,使用HBuilder X进行插件集成和调试,以获得最佳跨平台性能(尤其鸿蒙Next)。若坚持CLI方案,可能需暂缓UTS迁移,或通过混合工程(部分模块用HBuilder X管理)过渡。官方文档持续更新,可定期查阅UTS插件指南

内容为 AI 生成,仅供参考
程序员Tom

程序员Tom (作者)

原生语言插件不支持鸿蒙Next

要回复问题请先登录注册