关于微信支付其实有很多人都说了,最近在搞支付,发现了一些问题,
在RN中用到的微信支付的第三方:react-native-wechat
安装:react-native-wechat
//npm 安装
(npm install react-native-wechat --save
react-native link react-native-wechat)
ios 工程配置:
SystemConfiguration.framework
CoreTelephony.framework
libsqlite3.0
libc++
libz
除此之外还需要添加 libRCTWeChat.a(这个我发现好多文档里都没提到过,我测试过,没加它就会找不到wechat的错误),
点击TARGETS 下的项目名 -> info ,添加你的 申请的 微信 AppID到 "URL type"的"URL Schema"处
iOS9 以上,添加 微信白名单
或打开info.plist源码添加:
LSApplicationQueriesSchemes
weixin
在你项目的AppDelegate.m添加以下代码,启动[LinkingIOS]
#import
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [RCTLinkingManager application:application openURL:url
sourceApplication:sourceApplication annotation:annotation];
}
ios10之后的成功或失败回调
- (BOOL)application:(UIApplication*)application
openURL:(NSURL*)url
options:(NSDictionary *)options
{
return[RCTLinkingManagerapplication:application openURL:url
sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey]
annotation:options[UIApplicationOpenURLOptionsAnnotationKey]];
}
这几个我就不截图了,相信搞iOS得小伙伴都能找到地方.
安卓我不太会,网上有好多资料,希望安卓小伙伴自己去查阅吧
API
registerApp(appid) :注册APP
registerAppWithDescription(appid, appdesc) : 注册APP(仅支持iOS)
isWXAppInstalled() :检查微信是否安装
isWXAppSupportApi()
getApiVersion() :获得微信SDK的版本
openWXApp() :打开微信APP
sendAuthRequest([scope[, state]]) :发送微信登录授权
shareToTimeline(data) : 分享到朋友圈
shareToSession(data) :分享到朋友
pay(data) :调用微信支付
addListener(eventType, listener[, context]) :监听状态
once(eventType, listener[, context]) :监听状态
removeAllListeners() :移除所有监听
其实剩下的就没啥了,我就不往下写了,就算写了也和其他小伙伴的差不多.有问题在这里咨询吧.
(还不会排版,有会排版的小伙伴可以教教我.)我最近刚做完微信和支付宝支付,有问题可以来这里咨询,力所能及,肯定会回答的.如有错误望指出,一同成长.