@capgo/capacitor-wechat

中文文档
8.0.56发布于 2026/11/02MPL-2.0TypeScriptESM + CJS零依赖构建来源已验证近 30 天下载 2381

WeChat SDK for Capacitor - 允许认证、共享、支付和小型程序

中文使用文档
文档目录33 节
  1. *免费开始*
  2. 主要特点
  3. 文档
  4. 兼容性
  5. 安装
  6. 配置
  7. 电容配置
  8. iOS系统
  9. 机器人
  10. 设置
  11. API 密码
  12. 初始化(...)
  13. 已安装( I)
  14. 认证(...)
  15. 共享(...)
  16. 发送付费请求(...)
  17. 打开Mini 程序(...)
  18. 选择发票(...)
  19. 获取 PluginVersion ()
  20. 接口
  21. 用法实例
  22. 检查安装
  23. 认证
  24. 共享内容
  25. 付款
  26. 打开迷你程序
  27. 重要说明
  28. 解决问题
  29. iOS: 启动时使用 NSException 程序崩溃
  30. iOS: 用 Wechat OpenSDK 构建错误
  31. 贷项
  32. 许可证
  33. 捐款

电容器-微声

在您的 Capacitor app 中加入 WeChat 登录, 共享, 支付和小型程序, 并使用 WeChat Open SDK 的官方程序 .

Capgo - Build Capacitor apps with AI, ship updates instantly

队长:在几分钟内将修正推给您的 Capacitor 用户,在没有Mac的情况下构建已签名的iOS和Android apps,并在一击中回滚.

*免费开始*

14天无限自由审判. 不需要信用卡

🤖 建筑与AI编码代理? 安装 Capgo 技能 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用 @capgo/capacitor-wechat 在您的电容应用程序中: npx skills add Cap-go/capgo-skills。然后问你的经纪人: 添加@capgo/capor-wechat到我的Capacitor app上,并把它接上 代理设置指南 • 妇女 主机磁共振

@capgo/capacitor-wechat for Capacitor apps

主要特点

  • 设置数字 : initialize() 用您的 WeChat 应用程序 ID 和 isInstalled() 检查应用程序.
  • 登录数字 : auth() 运行 WeChat OAuth 流量.
  • 共享数字 : share() {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}聊天 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}时间和时间.
  • 付款数字 : sendPaymentRequest() 为 WeChat 付费.
  • 小型方案和发票数字 : openMiniProgram() 财务报告和审定财务报表 chooseInvoice()。 。 。 .
  • 平台: iOS和Android. 互联网档案馆的存檔,存档日期2013-12-21. 在网上不可用.

文档

这里有最完整的医生: https://capgo.app/docs/plugins/wechat/ (中文(简体) )

兼容性

插件版本电容兼容性维护
联合国联合国✅
页:1页:1应要求
页:1页:1❌
页:1页:1❌

说明: 此插件的主要版本沿用了Capacitor的主要版本. 使用匹配您的 Capacitor 安装的版本( 如 Capacitor 8 的插件 v8) 。 只有最新的主要版本得到积极维护.

安装

您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :

npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins

然后使用下列提示:

Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-wechat` plugin in my project.

如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:

npm install @capgo/capacitor-wechat
npx cap sync

配置

电容配置

将您的 WeChat 证书添加到 capacitor.config.ts (或 .json) (中文(简体) ). 你可以在运行时通过呼叫来覆盖它们 CapacitorWechat.initialize(...)。 。 。 .

const config: CapacitorConfig = {
  appId: 'com.example.app',
  appName: 'Example',
  webDir: 'dist',
  plugins: {
    CapacitorWechat: {
      appId: 'wx1234567890abcdef',
      universalLink: 'https://your-universal-link.example.com/'
    }
  }
};

iOS系统

在您的 Info.plist数字 :

<key>LSApplicationQueriesSchemes</key>
<array>
  <string>weixin</string>
  <string>weixinULAPI</string>
</array>

<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleTypeRole</key>
    <string>Editor</string>
    <key>CFBundleURLName</key>
    <string>weixin</string>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>YOUR_WECHAT_APP_ID</string>
    </array>
  </dict>
</array>

你需要把 WeChat SDK 整合到您的iOS项目中. 将 WeChat SDK 添加到您的 Podfile 或从中下载 WeChat 开放平台。 。 。 .

重要内容: iOS需要配置有效的通用链接. 你必须设置 universalLink 参数或者在您 capacitor.config (如上所示)或打电话时 initialize(). 没有有效的通用链接,该应用程序将在 WeChat SDK 初始化期间崩溃. 学习更多关于配置通用链接 WeChat iOS 文档。 。 。 .

机器人

插件传送 a AndroidManifest.xml 与 WeChat 的 Android 11+ 软件包可见度查询(com.tencent.mm) (中文(简体) ). 这需要用于 isInstalled() 编号 : isWXAppInstalled() 在Android 11和较新的工作。 如果您维持自定义的显示合并设置,请添加:

<queries>
  <package android:name="com.tencent.mm" />
</queries>

在您的应用中加入 WeChat 回调活动 AndroidManifest.xml数字 :

<manifest>
  <application>
    <!-- WeChat callback activity -->
    <activity
      android:name=".wxapi.WXEntryActivity"
      android:exported="true"
      android:label="@string/app_name"
      android:launchMode="singleTask"
      android:theme="@android:style/Theme.Translucent.NoTitleBar">
      <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
      </intent-filter>
    </activity>
  </application>
</manifest>

你得把WeChat SDK 纳入你的Android项目 将 WeChat SDK 依赖添加到您的 build.gradle 或从中下载 WeChat 开放平台。 。 。 .

创建 WXEntryActivity 财务报告和审定财务报表 WXPayEntryActivity 在您的应用程序包中( e)your.package.name.wxapi) (中文(简体) ). 这两项活动应延长 ee.forgr.plugin.capacitor_wechat.WechatResponseActivity 因此插件可以从 WeChat 接收回调 :

package your.package.name.wxapi;

import ee.forgr.plugin.capacitor_wechat.WechatResponseActivity;

public class WXEntryActivity extends WechatResponseActivity {}

public class WXPayEntryActivity extends WechatResponseActivity {}

在您的应用程序列表中注册这些活动, 就像上面的片段( WeChat 既要求一般的 SDK + 报酬回调) .

设置

在使用任何 WeChat 功能之前, 您需要使用 WeChat App ID 注册您的应用程序 WeChat 开放平台。一旦你拿到证书,就把他们放进 capacitor.config 或打电话 CapacitorWechat.initialize 在打电话之前:

import { CapacitorWechat } from '@capgo/capacitor-wechat';

await CapacitorWechat.initialize({
  appId: 'wx1234567890abcdef',
  universalLink: 'https://your-universal-link.example.com/'
});

API 密码

控制器 WeChat插件 - WeChat SDK集成,用于认证,共享,支付和小型程序.

初始化(...)

initialize(options: WechatInitializationOptions) => Promise<void>

以您的申请资格初始化 WeChat SDK .

您也可以在 capacitor.config.ts 下划线 CapacitorWechat 插件配置 。 调用此方法可以覆盖运行时的任何捆绑配置 .

参数类型说明
optionsWechatInitializationOptions- 初始化选项,包括所需的 WeChat App ID

自: 1.1.0 国家


已安装( I)

isInstalled() => Promise<{ installed: boolean; }>

请检查weChat app是否安装在设备上 .

回返情况: Promise<{ installed: boolean; }>

自: 1.0.0 (单位:千美元)


认证(...)

auth(options: WechatAuthOptions) => Promise<WechatAuthResponse>

使用 WeChat OAuth 认证用户 .

参数类型说明
optionsWechatAuthOptions- 包括范围在内的认证选项

回返情况: Promise<WechatAuthResponse>

自: 1.0.0 (单位:千美元)


共享(...)

share(options: WechatShareOptions) => Promise<void>

分享内容给 WeChat.

参数类型说明
optionsWechatShareOptions- 分享包括类型、场景和内容在内的选项

自: 1.0.0 (单位:千美元)


发送付费请求(...)

sendPaymentRequest(options: WechatPaymentOptions) => Promise<void>

将支付请求发送给 WeChat Pay.

参数类型说明
optionsWechatPaymentOptions- 服务器的付款请求选项

自: 1.0.0 (单位:千美元)


打开Mini 程序(...)

openMiniProgram(options: WechatMiniProgramOptions) => Promise<{ extMsg?: string; }>

开通微信小程序.

参数类型说明
optionsWechatMiniProgramOptions- 包括用户名和路径在内的小型程序选项

回返情况: Promise<{ extMsg?: string; }>

自: 1.0.0 (单位:千美元)


选择发票(...)

chooseInvoice(options: WechatInvoiceOptions) => Promise<WechatInvoiceResponse>

从 WeChat 选择发票 .

参数类型说明
optionsWechatInvoiceOptions- 发票选择方案

回返情况: Promise<WechatInvoiceResponse>

自: 1.0.0 (单位:千美元)


获取 PluginVersion ()

getPluginVersion() => Promise<{ version: string; }>

获取本地 Capacitor 插件版本 .

回返情况: Promise<{ version: string; }>

自: 1.0.0 (单位:千美元)


接口

Wechat 初始化选项

WeChat 初始化选项.

Prop类型说明
appIdstring需要 WeChat 应用程序 ID .
universalLinkstring与您的 WeChat 应用程序相联的 iOS 通用链接 .

WechatAuth 回复

WeChat认证响应.

Prop类型说明
codestring授权代码以交换访问令牌.
statestring如果请求中提供国家参数.

Wechat Auth 选项

WeChat 认证选项 .

Prop类型说明
scopestringOAuth范围. 仅对用户信息使用“ snsapi userinfo” 或仅对登录使用“ snsapi login” .
statestringCSRF 保护的可选状态参数.

Wechat 共享选项

WeChat 共享选项.

Prop类型说明
scenenumber分享场景:0=会话(聊天),1=时光线(时刻),2=最爱.
type'text' | 'image' | 'link' | 'music' | 'video' | 'miniprogram'共享类型:"text","image","link","music","video","miniprogram".
textstring文本内容( 对于“ text” 类型) .
titlestring标题(用于"link","music","video","miniprogram").
descriptionstring描述(用于"link","music","video","miniprogram").
linkstring链接 URL (用于"link"类型).
imageUrlstring图像 URL 或 base64 数据.
thumbUrlstring缩略图 URL 或 Base64 数据(用于"link","music","video"等类型).
mediaUrlstring音乐或视频 URL(用于"music","video"类型).
miniProgramUsernamestring迷你程序用户名(用于"迷你程序"类型).
miniProgramPathstring迷你程序路由(用于"迷你程序"类型).
miniProgramTypenumber迷你程序类型:0=放出,1=测试,2=预览(用于"迷你程序"类型).
miniProgramWebPageUrlstring迷你程序网页 URL回落 (用于"迷你程序"类型).

Wechat Payment 选项

WeChat支付选项.

Prop类型说明
partnerIdstring合伙人身份证(商身份证).
prepayIdstring从统一的订单 API 预付ID.
nonceStrstring随机弦.
timeStampstring时间戳.
packagestring包值,一般为"Sign=WXPay".
signstring签名.

WechatMini 方案选项

WeChat小程序选项.

Prop类型说明
usernamestring迷你程序用户名(原始ID).
pathstring小型程序打开路径 .
typenumber迷你程序类型:0=放出,1=测试,2=预览.

Wechat 发票回复

WeChat发票回复.

Prop类型说明
cardsWechatInvoiceCard[]选定卡片标识的组合 .

Wechat 发票卡

WeChat发票卡项目.

Prop类型说明
cardIdstring选中的卡标识符 .
encryptCodestringWeChat返回的加密代码.

Wechat 语音选项

WeChat 发票选项.

Prop类型说明
appIdstring应用识别码.
signTypestring签名类型.
cardSignstring卡片签名.
timeStampstring时间戳.
nonceStrstring随机弦.

用法实例

检查安装

import { CapacitorWechat } from '@capgo/capacitor-wechat';

const checkWechat = async () => {
  const { installed } = await CapacitorWechat.isInstalled();
  console.log('WeChat installed:', installed);
};

认证

const loginWithWechat = async () => {
  try {
    const { code } = await CapacitorWechat.auth({
      scope: 'snsapi_userinfo',
      state: 'my_random_state'
    });

    // Send code to your backend to exchange for access token
    const response = await fetch('https://yourapi.com/auth/wechat', {
      method: 'POST',
      body: JSON.stringify({ code })
    });

    const { access_token } = await response.json();
    console.log('Access token:', access_token);
  } catch (error) {
    console.error('WeChat auth failed:', error);
  }
};

共享内容

// Share text
const shareText = async () => {
  await CapacitorWechat.share({
    scene: 0, // 0 = Chat, 1 = Moments, 2 = Favorite
    type: 'text',
    text: 'Hello from Capacitor WeChat!'
  });
};

// Share link
const shareLink = async () => {
  await CapacitorWechat.share({
    scene: 1,
    type: 'link',
    title: 'Check out this awesome app!',
    description: 'Built with Capacitor',
    link: 'https://capacitorjs.com',
    thumbUrl: 'https://capacitorjs.com/icon.png'
  });
};

付款

const payWithWechat = async () => {
  // First, get payment parameters from your server
  const paymentParams = await fetchPaymentParamsFromServer();

  try {
    await CapacitorWechat.sendPaymentRequest({
      partnerId: paymentParams.partnerId,
      prepayId: paymentParams.prepayId,
      nonceStr: paymentParams.nonceStr,
      timeStamp: paymentParams.timeStamp,
      package: paymentParams.package,
      sign: paymentParams.sign
    });

    console.log('Payment successful!');
  } catch (error) {
    console.error('Payment failed:', error);
  }
};

打开迷你程序

const openMiniProgram = async () => {
  const { extMsg } = await CapacitorWechat.openMiniProgram({
    username: 'gh_xxxxxxxxxxxxx', // Mini program original ID
    path: 'pages/index/index',
    type: 0 // 0 = Release, 1 = Test, 2 = Preview
  });

  console.log('Mini program returned:', extMsg);
};

重要说明

  1. 微调 SDK:插件通过CocoaPod来拉出官方的SDK(WechatOpenSDK)和"格拉德"(英语:com.tencent.mm.opensdk:wechat-sdk-android-without-mta) (中文(简体) ). 如果使用自定义的构建设置,请确保这些依赖性保持不变.

  2. 应用程序注册: 您必须在 WeChat 开放平台 获取App ID.

  3. 通用链接(iOS): 对于iOS 13+,您需要配置WeChat召回的通用链接.

  4. 后端集成: 认证和支付功能需要后端集成,以交换令牌代码并准备支付参数.

解决问题

iOS: 启动时使用 NSException 程序崩溃

问题: 在 WeChat 插件装入 NSException 错误时立即应用崩溃 .

解决方案 : 这通常发生在 universalLink 未配置或为空。 确保您设置 universalLink 在你身边 capacitor.config 或打电话时 initialize()数字 :

// In capacitor.config.ts
plugins: {
  CapacitorWechat: {
    appId: 'wx1234567890abcdef',
    universalLink: 'https://your-domain.com/universal-link/'  // Required for iOS!
  }
}

// Or in your app initialization
await CapacitorWechat.initialize({
  appId: 'wx1234567890abcdef',
  universalLink: 'https://your-domain.com/universal-link/'
});

学习如何为 WeChat 建立通用链接 WeChat iOS 文档。 。 。 .

iOS: 用 Wechat OpenSDK 构建错误

问题: 构建失败, 错误涉及缺少 Wechat OpenSDK 模块 .

解决方案 : 确保通过CocoaPods适当安装了WeChat SDK. 运行 :

cd ios/App
pod install

贷项

此插件的灵感来自 线多瓦- plugin- wechat 并改编为Capacitor.

许可证

麻省理工学院

捐款

见 捐款额 关于如何为此插件贡献的详细信息.

版本与发布记录

@capgo/capacitor-wechat 共发布 66 个版本,首次发布于 2025/10/27;过去 12 个月发布了 58 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
8.0.56latest2026/11/027 天前
8.0.552026/10/2614 天前
8.0.542026/10/1921 天前
8.0.532026/10/1525 天前
8.0.522026/10/1327 天前
8.0.512026/10/1228 天前

关于 @capgo/capacitor-wechat 的常见问题

@capgo/capacitor-wechat 是什么?

WeChat SDK for Capacitor - 允许认证、共享、支付和小型程序

如何安装 @capgo/capacitor-wechat?

在项目目录运行 npm install @capgo/capacitor-wechat,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@capacitor/core(>=8.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@capgo/capacitor-wechat 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@capgo/capacitor-wechat 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@capgo/capacitor-wechat 可以商用吗?

@capgo/capacitor-wechat 使用 MPL-2.0 许可。弱 Copyleft:可以商用,也可以和闭源代码一起使用;但如果分发时修改了 MPL 授权的文件,这些文件的修改需以 MPL 开源。以上为概括,不构成法律意见,请以许可原文为准。

@capgo/capacitor-wechat 的下载量有多少?

根据 npm 官方下载统计,@capgo/capacitor-wechat 在 2026/10/09 – 2026/11/07 这 30 天内被下载 2,381 次,日均约 79 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@capgo/capacitor-wechat 还在维护吗?

最新版本 8.0.56 发布于 2026/11/02(7 天前);至今共发布 66 个版本,其中过去 12 个月发布了 58 个;首次发布于 2025/10/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。