更新记录

1.0.0(2026-08-13)

...............


平台兼容性

uni-app(3.8.2)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × × × × × × × √
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

uni-app x(3.8.2)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × × × √ ×

hm-***

鸿蒙(HarmonyOS Next)平台拉起微信小程序 UTS 插件,封装腾讯官方微信 Open SDK for HarmonyOS(@tencent/***_open_sdk),为 uni-app / uni-app x 项目提供「拉起微信小程序」与「检测微信客户端是否安装」能力。

插件特点

  • 纯 UTS 实现,同时兼容 uni-app(vue/nvue)与 uni-app x(uvue)项目
  • API 风格对齐 uni 官方规范,支持 success / fail / complete 回调及标准 uni 错误码(90 开头)
  • 内置完整参数校验与兜底异常处理,拉起前自动检测微信客户端安装状态
  • 提供 TypeScript 类型定义,HBuilderX 中可获得完整的语法提示与类型检查

适用场景

  • 鸿蒙 App 内跳转到微信小程序完成支付、领券、活动参与等闭环业务
  • App 与小程序双端运营导流
  • 拉起前探测用户设备微信安装状态并做降级处理

安装步骤

  1. 通过 uni-app 插件市场导入本插件,或手动将 hm-*** 目录放入项目 uni_modules/ 下。
  2. 确认 utssdk/app-harmony/config.json 中已声明鸿蒙端 SDK 依赖(插件默认已配置):
{
  "dependencies": {
    "@tencent/***_open_sdk": "1.0.16"
  }
}
  1. 使用 HBuilderX 3.6.8+ 制作鸿蒙自定义基座或打包鸿蒙 App。

配置方式

1. 微信开放平台配置

前往微信开放平台(open.weixin.qq.com)创建「移动应用」,平台选择 HarmonyOS,填写鸿蒙应用的 Bundle Name 等信息并通过审核,获得移动应用 AppID(wx 开头)。

注意:appId 参数必须填写该移动应用 AppID,切勿填写微信小程序自身的 AppID。

2. 鸿蒙工程 querySchemes 配置

在鸿蒙工程 entry/src/main/module.json5 中配置:

{
  "module": {
    "querySchemes": ["weixin", "wxopensdk"]
  }
}

3. 小程序原始 ID 获取

目标小程序的原始 ID(gh_ 开头)可在「微信公众平台 → 设置 → 基本配置 → 账号信息」中查看。

核心 API

API 类型 说明
launchMiniProgram(options) 异步 拉起指定微信小程序
isWXAppInstalled(appId) 同步 检测当前设备是否已安装微信客户端

调用示例

uni-app(vue/nvue)项目

import { launchMiniProgram, isWXAppInstalled } from '@/uni_modules/hm-***';

// 先检测微信是否安装
const installed = isWXAppInstalled('wx1bdxxxxxae3e4');
if (!installed) {
  uni.showToast({ title: '请先安装微信', icon: 'none' });
  return;
}

// 拉起小程序
launchMiniProgram({
  appId: 'wx1bdxxxxxae3e4',       // 微信开放平台移动应用 AppID(鸿蒙)
  userName: 'gh_d4xxxxa31f',       // 小程序原始ID
  path: 'pages/index/index?foo=bar', // 可选,页面路径(可带参)
  miniprogramType: 0,                // 可选,0-正式版 1-开发版 2-体验版
  success: (res) => { console.log('拉起成功', res); },
  fail: (err) => { console.error('拉起失败', err.errCode, err.errMsg); },
  complete: (res) => { console.log('完成', res); }
});

uni-app x(uvue)项目

import { launchMiniProgram, LaunchMiniProgramOptions } from '@/uni_modules/hm-***';

let options = {
  appId: 'wx1bdxxxxxae3e4',
  userName: 'gh_d4xxxxa31f',
  complete: (res: any) => { console.log(res); }
} as LaunchMiniProgramOptions;

launchMiniProgram(options);

参数说明

launchMiniProgram 入参(LaunchMiniProgramOptions)

参数 类型 必填 说明
appId String 是 微信开放平台移动应用 AppID(鸿蒙应用,非小程序 AppID)
userName String 是 目标小程序的原始 ID,以 gh_ 开头
path String 否 拉起小程序页面的可带参路径,不填默认拉起小程序首页
miniprogramType Number 否 版本类型:0-正式版、1-开发版、2-体验版,缺省为 0
success Function 否 成功回调,返回 { errMsg: "ok" }
fail Function 否 失败回调,返回 errCode + errMsg
complete Function 否 结束回调(成功、失败均执行)

isWXAppInstalled 入参

参数 类型 必填 说明
appId String 是 微信开放平台移动应用 AppID

错误码表

errCode 说明
9010001 AppID 不能为空
9010002 小程序原始 ID(userName)不能为空
9010003 无法获取应用上下文(UIAbilityContext)
9010004 微信客户端未安装
9010005 拉起请求发送失败
9010006 参数非法,miniprogramType 仅支持 0/1/2
9010007 当前平台不支持拉起微信小程序(仅鸿蒙已实现)

兼容性说明

项目 最低兼容版本
HBuilderX 3.6.8+
uni-app 3.1.0+
uni-app x 3.1.0+

平台支持范围:

平台 支持情况
App-Harmony(鸿蒙 Next) 支持
App-Plus(Android/iOS) 不支持(其他平台调用返回 9010007)
小程序 / H5 / 快应用 不支持

Vue 版本支持

本插件为纯 UTS API 插件(不含 UI 组件),Vue 版本无关:

  • 支持 Vue2(uni-app 项目)
  • 支持 Vue3(uni-app / uni-app x 项目)

系统权限说明

本插件不需要申请任何鸿蒙系统敏感权限(定位、相机、通讯录等均不涉及),所需配置均为非权限类的清单声明:

配置项 用途 配置时机
querySchemes: ["weixin", "wxopensdk"] 允许应用查询/跳转微信客户端的 URL Scheme,用于检测微信安装状态及拉起微信 打包前在 module.json5 静态配置,无需运行时申请
@tencent/***_open_sdk 依赖 集成腾讯微信 Open SDK 鸿蒙版 打包前在 config.json 静态配置

数据采集与使用说明

  • 插件自身不采集、不存储、不上传任何用户数据,无埋点、无统计、无任何第三方服务器请求。
  • 调用 launchMiniProgram 时,仅将「移动应用 AppID、小程序原始 ID、页面路径、版本类型」通过腾讯微信 Open SDK 的本地接口传递给本机已安装的微信客户端进程,用于完成应用间跳转,数据不出设备。
  • 拉起后的行为发生在微信客户端内部,由微信按其隐私政策处理,与本插件无关。开发者应在自身 App 的隐私政策中声明集成了「微信 Open SDK(HarmonyOS)」,用途为「拉起微信小程序」。
  • 插件不包含任何网络请求代码,无数据发送的服务器地址。

广告说明

本插件不包含任何广告:无开屏、插屏、激励视频、Banner 等任何形式的广告,不集成任何广告 SDK。

参考资料

  • UTS 语法:https://uniapp.dcloud.net.cn/tutorial/syntax-uts.html
  • UTS API 插件:https://uniapp.dcloud.net.cn/plugin/uts-plugin.html
  • UTS 鸿蒙开发:https://doc.dcloud.net.cn/uni-app-x/plugin/uts-for-harmony.html
  • 微信 Open SDK 鸿蒙接入指南:https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/ohos.html

隐私、权限声明

1. 本插件需要申请的系统权限列表:

本插件 不需要申请任何鸿蒙系统敏感权限 (如定位、相机、通讯录等均不涉及)。

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

本插件代码 不采集、不存储、不上传任何用户数据 ,无埋点、无统计、无任何第三方服务器请求。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

本插件 不包含任何广告

暂无用户评论。