react-native-wechat-android
react-native 的微信SDK辅助包,支持微信登录、微信分享、微信支付。
安装及使用方法
提供以下方法 / Method
- registerApp
- openWXApp
- isWXAppInstalled
- isWXAppSupportAPI
- getWXAppSupportAPI
- sendAuthReq
- sendReq
- weChatPay
registerApp(appId,callback)
appId : 在微信开放平台申请的AppID
callback : 回调(err,res)
使用示例:
WeChatAndroid;
openWXApp(callback)
callback : 回调(err,res)
使用示例:
WeChatAndroid;
isWXAppInstalled(callback)
callback : 回调(err,res)
使用示例:
WeChatAndroid;
isWXAppSupportAPI(callback)
callback : 回调(err,res)
使用示例:
WeChatAndroid;
getWXAppSupportAPI(callback)
callback : 回调(err,res)
使用示例:
WeChatAndroid;
sendAuthReq(scope,state,callback)
scope : 微信登录需要的参数(可空)
state : 微信登录需要的参数(可空)
callback : 回调(err,res)
使用示例:
WeChatAndroid;
or
WeChatAndroid;
// 处理登录回调结果DeviceEventEmitter;
sendReq(options,callback)
options : 分享到微信需要的参数
- type (必传,用来区分分享的内容)
- 1:文字
- 2:图片
- 3:网页
- 4:音乐
- 5:视频
- title (分享的标题)
- desc (分享的描述)
- thumbSize (分享的缩略图大小,不传默认150)
- tagName
- transaction
- scene (分享方式,传错或者不传默认为0)
- 0:聊天界面/好友
- 1:朋友圈
- 2:收藏
- text (当分享类型为文本时使用)
- imageUrl (当分享类型为网络照片时使用)
- imagePath (当分享类型为本地照片时使用)
- webpageUrl (当分享类型为网页时使用)
- musicUrl (当分享类型为音乐时使用)
- musicLowBandUrl (当分享类型为音乐时使用)
- thumbImage (仅当分享类型为网页、音乐、视频时使用)
callback : 回调(err,res)
使用示例:
//分享文本var textOptions = title: '分享一段内容给你' transaction: 'text' scene: 0 type: 1 text: '这里是分享的文本内容' //分享网络图片var networkImageOptions = title: '分享一张图片给你' thumbSize: 150 scene: 0 type: 2 imageUrl: 'https://avatars3.githubusercontent.com/u/3015681?v=3&s=460' //分享本地图片var localImageOptions = title: '分享一张图片给你' thumbSize: 150 scene: 0 type: 2 imagePath: '/mnt/sdcard/temp.png' //分享网页var webpageOptions = title: '分享这个网页给你' desc: '我发现这个网页很有趣,特意分享给你' thumbSize: 150 scene: 0 type: 3 webpageUrl: 'https://github.com/beefe/react-native-wechat-android' thumbImage: 'http://img1.imgtn.bdimg.com/it/u=3924416677,403957246&fm=21&gp=0.jpg' //分享音乐var musicOptions = title: '这里是分享的标题' desc: '发现一首好听的音乐,分享给你' transaction: 'music' scene: 1 type: 4 musicUrl: 'http://staff2.ustc.edu.cn/~wdw/softdown/index.asp/0042515_05.ANDY.mp3' thumbImage: 'http://img1.imgtn.bdimg.com/it/u=3924416677,403957246&fm=21&gp=0.jpg' //分享视频var videoOptions = title: '这里是分享的标题' desc: '这个视频好有趣,一起来看看' transaction: 'video' scene: 1 type: 5 videoUrl: 'http://www.iqiyi.com/v_19rrnlidhk.html?src=sharemodclk131212' thumbImage: 'http://img1.imgtn.bdimg.com/it/u=3924416677,403957246&fm=21&gp=0.jpg' WeChatAndroid; // 分享回调DeviceEventEmitter;
weChatPay(options,callback)
options : 微信支付需要的参数
callback : 回调(err,res)
使用示例:
var payOptions = appId: 'wx8888888888888888' nonceStr: '5K8264ILTKCH16CQ2502SI8ZNMTM67VS' packageValue: 'Sign=WXPay' partnerId: '1900000109' prepayId: 'WX1217752501201407033233368018' timeStamp: '1412000000' sign: 'C380BEC2BFD727A4B6845133519F3AD6'; WeChatAndroid; // 处理支付回调结果DeviceEventEmitter;
Notes
- 打包apk请参考Generating Signed APK
- 如需要混淆,需要在混淆文件里加上以下代码:
-keep class com.tencent.mm.sdk.** { *;}