更新记录

1.0.0(2026-04-11) 下载此版本

初次提交


平台兼容性

uni-app x(4.84)

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

laoqianjunzi-***

laoqianjunzi-*** 是一个面向 uni-app / uni-app x 的微信能力插件,聚合了以下接口:

  • 微信授权登录
  • 微信分享
  • 微信支付
  • 拉起微信小程序
  • 打开微信客服会话
  • 监听从微信回跳到应用时携带的数据

支持平台

平台 状态 说明
app-android 已实现 使用微信开放平台 Android SDK
app-ios 已实现 使用微信开放平台 iOS SDK
app-harmony 已实现 使用微信开放平台 Harmony SDK
mp-weixin 部分实现 支持登录、支付,分享与客服保留统一接口并给出失败回调
web 接口占位 保留统一 API,避免 Web 编译时报错

安装后目录说明

本插件没有总入口 utssdk/index.uts,五端能力都分别放在各自目录的 index.uts 中,便于按平台维护:

  • utssdk/app-android/index.uts
  • utssdk/app-ios/index.uts
  • utssdk/app-harmony/index.uts
  • utssdk/mp-weixin/index.uts
  • utssdk/web/index.uts

对外 API

插件通过 get***AccessPoint() 返回统一能力对象,包含以下方法:

  • isInstall()
  • register(options)
  • authorize(options)
  • share(options)
  • pay(options)
  • launchMiniProgram(options)
  • openCustomerService(options)
  • onLaunchFrom***(options)
  • offLaunchFrom***()

快速开始

1. 引入插件

import { get***AccessPoint } from '@/uni_modules/laoqianjunzi-***'

const *** = get***AccessPoint()

2. 初始化

建议在应用启动后尽早执行注册。

***.register({
    appId: '你的微信开放平台 AppID',
    universalLink: '你的 Universal Link,Android 可传空字符串',
    success: () => {
        console.log('微信能力初始化完成')
    },
    fail: (error) => {
        console.error('初始化失败', error)
    },
    complete: null
})

3. 微信授权登录

***.authorize({
    state: 'login-state',
    success: (result) => {
        console.log('授权 code', result.code)
        console.log('回传 state', result.state)
    },
    fail: (error) => {
        console.error('授权失败', error)
    },
    complete: null
})

4. 微信分享

contentType 对应关系:

  • 0 纯文本
  • 1 图片
  • 2 视频
  • 3 网页
  • 4 小程序
  • 5 音乐

targetScene 对应关系:

  • 0 会话
  • 1 朋友圈
  • 2 收藏

网页分享示例:

***.share({
    contentType: 3,
    targetScene: 0,
    title: '活动详情',
    summary: '打开活动链接查看完整内容',
    imagePath: null,
    thumbnailPath: '/static/share-thumb.jpg',
    videoUrl: null,
    musicUrl: null,
    webpageUrl: 'https://example.com/activity',
    miniProgram: null,
    success: () => {
        console.log('分享完成')
    },
    fail: (error) => {
        console.error('分享失败', error)
    },
    complete: null
})

小程序分享示例:

***.share({
    contentType: 4,
    targetScene: 0,
    title: '打开小程序',
    summary: '点击查看小程序页面',
    imagePath: null,
    thumbnailPath: '/static/mini-thumb.jpg',
    videoUrl: null,
    musicUrl: null,
    webpageUrl: null,
    miniProgram: {
        originalId: 'gh_xxxxxxx',
        pagePath: 'pages/home/home',
        fallbackUrl: 'https://example.com/fallback',
        releaseChannel: 0
    },
    success: null,
    fail: null,
    complete: null
})

5. 微信支付

***.pay({
    merchantId: '商户号',
    prepayId: '预支付交易会话 ID',
    nonce: '随机串',
    timestamp: 1710000000,
    packageValue: 'Sign=WXPay',
    signature: '服务端签名',
    success: () => {
        console.log('支付成功')
    },
    fail: (error) => {
        console.error('支付失败', error)
    },
    complete: null
})

6. 拉起微信小程序

***.launchMiniProgram({
    originalId: 'gh_xxxxxxx',
    pagePath: 'pages/detail/detail?id=1001',
    releaseChannel: 0,
    success: (result) => {
        console.log('微信返回附加消息', result.extraMessage)
    },
    fail: (error) => {
        console.error('拉起失败', error)
    },
    complete: null
})

7. 打开微信客服

***.openCustomerService({
    enterpriseId: '企业 ID',
    serviceUrl: 'https://work.weixin.qq.com/kfid/xxxxxx',
    success: () => {
        console.log('客服会话已打开')
    },
    fail: (error) => {
        console.error('打开客服失败', error)
    },
    complete: null
})

8. 监听从微信跳回应用

***.onLaunchFrom***({
    success: (result) => {
        console.log('微信附加数据', result.extraData)
    },
    fail: null,
    complete: null
})

页面销毁时建议解除监听:

***.offLaunchFrom***()

平台接入说明

Android

  • 插件已内置 Android 依赖声明,无需额外引入微信 SDK。
  • 保留了 ${applicationId}.wxapi.WXEntryActivity 别名,方便微信回调回到宿主应用。

iOS

  • 请打开 uni_modules/laoqianjunzi-***/utssdk/app-ios/Info.plist,填写 Laoqianjunzi***.appIdLaoqianjunzi***.universalLink
  • 同时把 CFBundleURLSchemes 中的占位值替换为你的微信 AppID。
  • 微信开放平台后台配置的 Universal Link 要与这里保持一致。

HarmonyOS

  • 插件使用 @tencent/***_open_sdk
  • 宿主工程仍需按照微信开放平台接入文档补充 queryScheme、actions 等配置。

微信小程序

  • 登录和支付走小程序侧 uni.loginuni.requestPayment
  • 分享建议改为页面级 onShareAppMessage / onShareTimeline
  • 客服建议使用官方客服组件或页面配置。

Web

  • 当前只保留统一接口,方便跨端编译通过。
  • 如需微信网页授权或 JS-SDK 分享,请在业务层自行接入服务端签名与网页授权流程。

错误码

常见错误码如下:

  • 101 设备未安装微信
  • 102 插件未初始化
  • 301 分享类型非法
  • 302 分享场景非法
  • 401 小程序原始 ID 缺失
  • 402 小程序页面路径缺失
  • 501 企业 ID 缺失
  • 502 客服地址缺失
  • 901 用户取消
  • 902 微信拒绝
  • 1000 当前平台暂不支持该能力

建议

  • 支付参数、授权换 token、用户信息拉取等敏感流程建议全部放到服务端处理。
  • 若业务需要同时兼容五端,建议先在 Web 或小程序侧完成参数建模,再逐步联调 Android、Harmony、iOS 的真机行为。

隐私、权限声明

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

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

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

许可协议

MIT协议

暂无用户评论。