1、修改 capacitor.config.ts 增加微信相关配置参数
const config: CapacitorConfig = {
plugins: {
WechatSDK: {
mchid: '1234567890', // 商户id, 如无微信支付功能可忽略此参数
wechatAppId: 'wx1234567890123456', // 微信应用id: 从微信开放平台官方网站申请到的合法AppId
wechatUniversalLink: 'https://com.***.***/' // UniversalLink 仅针对于iOS
},
}
};
1、参考微信官方配置UniversalLink并配置URL scheme和LSApplicationQueriesSchemes
2、在你的工程文件中选择 Build Setting, 在"Other Linker Flags"中加入"-ObjC -all_load"
3、修改app/appDelegate.swift, 增加或修改下面回调处理:
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
return WechatSDKApplicationDelegate.sharedInstance.application(application,continue: userActivity, restorationHandler: restorationHandler)
// return ApplicationDelegateProxy.shared.application(application, continue: userActivity, restorationHandler: restorationHandler)
}
1、Android 11 适配 参考微信官方文档
npm install @fetaoily/capacitor-wechat-sdk
npx cap sync
import {WechatSDK as Wechat} from "@fetaoily/capacitor-wechat-sdk";
echo(...)
pay(...)
isInstalled()
shareText(...)
shareLink(...)
shareImage(...)
shareMiniProgram(...)
launchMiniProgram(...)
sendAuthRequest(...)
wxOpenCustomerServiceChat(...)
echo(options: { value: string; }) => Promise<any>
测试
Param | Type |
---|---|
options |
{ value: string; } |
Returns: Promise<any>
pay(options: { prepayId: string; packageValue: string; nonceStr: string; timeStamp: string; sign: string; }) => Promise<any>
调起微信支付
Param | Type |
---|---|
options |
{ prepayId: string; packageValue: string; nonceStr: string; timeStamp: string; sign: string; } |
Returns: Promise<any>
isInstalled() => Promise<any>
判断是否安装微信
Returns: Promise<any>
shareText(options: { text: string; scene: string; }) => Promise<any>
分享文本
Param | Type |
---|---|
options |
{ text: string; scene: string; } |
Returns: Promise<any>
shareLink(options: { url: string; title: string; description: string; thumb?: string; scene: number; }) => Promise<any>
分享链接
Param | Type | Description |
---|---|---|
options |
{ url: string; title: string; description: string; thumb?: string; scene: number; } |
thumb - 图片url地址 例如:http://xxx.com/test.png |
Returns: Promise<any>
shareImage(options: { image: string; title: string; description: string; scene: number; }) => Promise<any>
分享图片,可配合@capacitor/filesystem 使用
Param | Type | Description |
---|---|---|
options |
{ image: string; title: string; description: string; scene: number; } |
image - 本地图片的名称,如有特殊需求请自行修改获取图片的位置或方式 ios默认去documentDirectory下寻找 android默认去 /XXX/yourAppPackageName/cache目录下寻找图片文件 |
Returns: Promise<any>
shareMiniProgram(options: { webpageUrl: string; userName: string; path: string; hdImageData: string; withShareTicket: boolean; miniProgramType: number; title: string; description: string; scene: number; }) => Promise<any>
分享微信小程序
Param | Type | Description |
---|---|---|
options |
{ webpageUrl: string; userName: string; path: string; hdImageData: string; withShareTicket: boolean; miniProgramType: number; title: string; description: string; scene: number; } |
hdImageData - 图片url地址 例如:http://xxx.com/test.png |
Returns: Promise<any>
launchMiniProgram(options: { userName: string; path: string; miniProgramType: number; }) => Promise<any>
调起微信小程序
Param | Type |
---|---|
options |
{ userName: string; path: string; miniProgramType: number; } |
Returns: Promise<any>
sendAuthRequest(options: { scope: string; state: string; }) => Promise<any>
微信登录
Param | Type |
---|---|
options |
{ scope: string; state: string; } |
Returns: Promise<any>
wxOpenCustomerServiceChat(options: { corpId: string; url: string; }) => Promise<any>
拉起微信客服
Param | Type | Description |
---|---|---|
options |
{ corpId: string; url: string; } |
corpId - 企业ID url - 客服URL |
Returns: Promise<any>