格式化
This commit is contained in:
parent
2c774270cb
commit
48b51fd8df
350
ios/WechatLib.mm
350
ios/WechatLib.mm
@ -1,10 +1,10 @@
|
|||||||
// Created by little-snow-fox on 2019-10-9.
|
// Created by little-snow-fox on 2019-10-9.
|
||||||
#import "WechatLib.h"
|
|
||||||
#import "WXApiObject.h"
|
#import "WXApiObject.h"
|
||||||
#import <React/RCTEventDispatcher.h>
|
#import "WechatLib.h"
|
||||||
#import <React/RCTBridge.h>
|
#import <React/RCTBridge.h>
|
||||||
#import <React/RCTLog.h>
|
#import <React/RCTEventDispatcher.h>
|
||||||
#import <React/RCTImageLoader.h>
|
#import <React/RCTImageLoader.h>
|
||||||
|
#import <React/RCTLog.h>
|
||||||
|
|
||||||
@implementation WechatLib
|
@implementation WechatLib
|
||||||
|
|
||||||
@ -16,8 +16,7 @@
|
|||||||
|
|
||||||
RCT_EXPORT_MODULE()
|
RCT_EXPORT_MODULE()
|
||||||
|
|
||||||
- (instancetype)init
|
- (instancetype)init {
|
||||||
{
|
|
||||||
self = [super init];
|
self = [super init];
|
||||||
if (self) {
|
if (self) {
|
||||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleOpenURL:) name:@"RCTOpenURLNotification" object:nil];
|
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleOpenURL:) name:@"RCTOpenURLNotification" object:nil];
|
||||||
@ -25,26 +24,22 @@ RCT_EXPORT_MODULE()
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)dealloc
|
- (void)dealloc {
|
||||||
{
|
|
||||||
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (BOOL)handleOpenURL:(NSNotification *)aNotification
|
- (BOOL)handleOpenURL:(NSNotification *)aNotification {
|
||||||
{
|
NSString *aURLString = [aNotification userInfo][@"url"];
|
||||||
NSString * aURLString = [aNotification userInfo][@"url"];
|
NSURL *aURL = [NSURL URLWithString:aURLString];
|
||||||
NSURL * aURL = [NSURL URLWithString:aURLString];
|
|
||||||
|
|
||||||
if ([WXApi handleOpenURL:aURL delegate:self])
|
if ([WXApi handleOpenURL:aURL delegate:self]) {
|
||||||
{
|
|
||||||
return YES;
|
return YES;
|
||||||
} else {
|
} else {
|
||||||
return NO;
|
return NO;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (dispatch_queue_t)methodQueue
|
- (dispatch_queue_t)methodQueue {
|
||||||
{
|
|
||||||
return dispatch_get_main_queue();
|
return dispatch_get_main_queue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -53,9 +48,9 @@ RCT_EXPORT_MODULE()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 获取网络图片的公共方法
|
// 获取网络图片的公共方法
|
||||||
- (UIImage *) getImageFromURL:(NSString *)fileURL {
|
- (UIImage *)getImageFromURL:(NSString *)fileURL {
|
||||||
UIImage * result;
|
UIImage *result;
|
||||||
NSData * data = [NSData dataWithContentsOfURL:[NSURL URLWithString:fileURL]];
|
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:fileURL]];
|
||||||
result = [UIImage imageWithData:data];
|
result = [UIImage imageWithData:data];
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -104,10 +99,10 @@ RCT_EXPORT_MODULE()
|
|||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(registerApp:(NSString *)appid
|
RCT_EXPORT_METHOD(registerApp
|
||||||
:(NSString *)universalLink
|
: (NSString *)appid
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)universalLink
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
self.appId = appid;
|
self.appId = appid;
|
||||||
callback(@[[WXApi registerApp:appid universalLink:universalLink] ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[[WXApi registerApp:appid universalLink:universalLink] ? [NSNull null] : INVOKE_FAILED]);
|
||||||
}
|
}
|
||||||
@ -119,56 +114,54 @@ RCT_EXPORT_METHOD(registerApp:(NSString *)appid
|
|||||||
// callback(@[[WXApi registerApp:appid withDescription:appdesc] ? [NSNull null] : INVOKE_FAILED]);
|
// callback(@[[WXApi registerApp:appid withDescription:appdesc] ? [NSNull null] : INVOKE_FAILED]);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(isWXAppInstalled:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(isWXAppInstalled
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
callback(@[[NSNull null], @([WXApi isWXAppInstalled])]);
|
callback(@[[NSNull null], @([WXApi isWXAppInstalled])]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(isWXAppSupportApi:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(isWXAppSupportApi
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
callback(@[[NSNull null], @([WXApi isWXAppSupportApi])]);
|
callback(@[[NSNull null], @([WXApi isWXAppSupportApi])]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(getWXAppInstallUrl:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(getWXAppInstallUrl
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
callback(@[[NSNull null], [WXApi getWXAppInstallUrl]]);
|
callback(@[[NSNull null], [WXApi getWXAppInstallUrl]]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(getApiVersion:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(getApiVersion
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
callback(@[[NSNull null], [WXApi getApiVersion]]);
|
callback(@[[NSNull null], [WXApi getApiVersion]]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(openWXApp:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(openWXApp
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
callback(@[([WXApi openWXApp] ? [NSNull null] : INVOKE_FAILED)]);
|
callback(@[([WXApi openWXApp] ? [NSNull null] : INVOKE_FAILED)]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(sendRequest:(NSString *)openid
|
RCT_EXPORT_METHOD(sendRequest
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)openid
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
BaseReq* req = [[BaseReq alloc] init];
|
BaseReq *req = [[BaseReq alloc] init];
|
||||||
req.openID = openid;
|
req.openID = openid;
|
||||||
// callback(@[[WXApi sendReq:req] ? [NSNull null] : INVOKE_FAILED]);
|
// callback(@[[WXApi sendReq:req] ? [NSNull null] : INVOKE_FAILED]);
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
[WXApi sendReq:req completion:completion];
|
[WXApi sendReq:req completion:completion];
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(sendAuthRequest:(NSString *)scope
|
RCT_EXPORT_METHOD(sendAuthRequest
|
||||||
:(NSString *)state
|
: (NSString *)scope
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)state
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
SendAuthReq* req = [[SendAuthReq alloc] init];
|
SendAuthReq *req = [[SendAuthReq alloc] init];
|
||||||
req.scope = scope;
|
req.scope = scope;
|
||||||
req.state = state;
|
req.state = state;
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -176,13 +169,12 @@ RCT_EXPORT_METHOD(sendAuthRequest:(NSString *)scope
|
|||||||
[WXApi sendAuthReq:req viewController:rootViewController delegate:self completion:completion];
|
[WXApi sendAuthReq:req viewController:rootViewController delegate:self completion:completion];
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(sendSuccessResponse:(RCTResponseSenderBlock)callback)
|
RCT_EXPORT_METHOD(sendSuccessResponse
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
BaseResp* resp = [[BaseResp alloc] init];
|
BaseResp *resp = [[BaseResp alloc] init];
|
||||||
resp.errCode = WXSuccess;
|
resp.errCode = WXSuccess;
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -190,15 +182,14 @@ RCT_EXPORT_METHOD(sendSuccessResponse:(RCTResponseSenderBlock)callback)
|
|||||||
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
|
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(sendErrorCommonResponse:(NSString *)message
|
RCT_EXPORT_METHOD(sendErrorCommonResponse
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)message
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
BaseResp* resp = [[BaseResp alloc] init];
|
BaseResp *resp = [[BaseResp alloc] init];
|
||||||
resp.errCode = WXErrCodeCommon;
|
resp.errCode = WXErrCodeCommon;
|
||||||
resp.errStr = message;
|
resp.errStr = message;
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -206,15 +197,14 @@ RCT_EXPORT_METHOD(sendErrorCommonResponse:(NSString *)message
|
|||||||
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
|
// callback(@[[WXApi sendResp:resp] ? [NSNull null] : INVOKE_FAILED]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(sendErrorUserCancelResponse:(NSString *)message
|
RCT_EXPORT_METHOD(sendErrorUserCancelResponse
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)message
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
BaseResp* resp = [[BaseResp alloc] init];
|
BaseResp *resp = [[BaseResp alloc] init];
|
||||||
resp.errCode = WXErrCodeUserCancel;
|
resp.errCode = WXErrCodeUserCancel;
|
||||||
resp.errStr = message;
|
resp.errStr = message;
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -223,16 +213,15 @@ RCT_EXPORT_METHOD(sendErrorUserCancelResponse:(NSString *)message
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享文本
|
// 分享文本
|
||||||
RCT_EXPORT_METHOD(shareText:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareText
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
||||||
req.bText = YES;
|
req.bText = YES;
|
||||||
req.text = data[@"text"];
|
req.text = data[@"text"];
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -240,9 +229,9 @@ RCT_EXPORT_METHOD(shareText:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 选择发票
|
// 选择发票
|
||||||
RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data
|
RCT_EXPORT_METHOD(chooseInvoice
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXChooseInvoiceReq *req = [[WXChooseInvoiceReq alloc] init];
|
WXChooseInvoiceReq *req = [[WXChooseInvoiceReq alloc] init];
|
||||||
req.appID = self.appId;
|
req.appID = self.appId;
|
||||||
req.timeStamp = [data[@"timeStamp"] intValue];
|
req.timeStamp = [data[@"timeStamp"] intValue];
|
||||||
@ -250,9 +239,8 @@ RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data
|
|||||||
req.cardSign = data[@"cardSign"];
|
req.cardSign = data[@"cardSign"];
|
||||||
req.signType = data[@"signType"];
|
req.signType = data[@"signType"];
|
||||||
|
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -260,13 +248,13 @@ RCT_EXPORT_METHOD(chooseInvoice:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享文件
|
// 分享文件
|
||||||
RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareFile
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
NSString *url = data[@"url"];
|
NSString *url = data[@"url"];
|
||||||
WXFileObject *file = [[WXFileObject alloc] init];
|
WXFileObject *file = [[WXFileObject alloc] init];
|
||||||
file.fileExtension = data[@"ext"];
|
file.fileExtension = data[@"ext"];
|
||||||
NSData *fileData = [NSData dataWithContentsOfURL:[NSURL URLWithString: url]];
|
NSData *fileData = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]];
|
||||||
file.fileData = fileData;
|
file.fileData = fileData;
|
||||||
|
|
||||||
WXMediaMessage *message = [WXMediaMessage message];
|
WXMediaMessage *message = [WXMediaMessage message];
|
||||||
@ -277,9 +265,8 @@ RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data
|
|||||||
req.bText = NO;
|
req.bText = NO;
|
||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -287,17 +274,16 @@ RCT_EXPORT_METHOD(shareFile:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享图片
|
// 分享图片
|
||||||
RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareImage
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
NSString *imageUrl = data[@"imageUrl"];
|
NSString *imageUrl = data[@"imageUrl"];
|
||||||
if (imageUrl == NULL || [imageUrl isEqual:@""]) {
|
if (imageUrl == NULL || [imageUrl isEqual:@""]) {
|
||||||
callback([NSArray arrayWithObject:@"shareImage: The value of ImageUrl cannot be empty."]);
|
callback([NSArray arrayWithObject:@"shareImage: The value of ImageUrl cannot be empty."]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
NSRange range = [imageUrl rangeOfString:@"."];
|
NSRange range = [imageUrl rangeOfString:@"."];
|
||||||
if ( range.length == 0)
|
if (range.length == 0) {
|
||||||
{
|
|
||||||
callback([NSArray arrayWithObject:@"shareImage: ImageUrl value, Could not find file suffix."]);
|
callback([NSArray arrayWithObject:@"shareImage: ImageUrl value, Could not find file suffix."]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -311,8 +297,8 @@ RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
|
|||||||
imageObject.imageData = imageData;
|
imageObject.imageData = imageData;
|
||||||
|
|
||||||
WXMediaMessage *message = [WXMediaMessage message];
|
WXMediaMessage *message = [WXMediaMessage message];
|
||||||
// 利用原图压缩出缩略图,确保缩略图大小不大于32KB
|
// 利用原图压缩出缩略图,确保缩略图大小不大于 32KB
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
message.mediaObject = imageObject;
|
message.mediaObject = imageObject;
|
||||||
message.title = data[@"title"];
|
message.title = data[@"title"];
|
||||||
message.description = data[@"description"];
|
message.description = data[@"description"];
|
||||||
@ -322,9 +308,8 @@ RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
|
|||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
// [WXApi sendReq:req];
|
// [WXApi sendReq:req];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -332,17 +317,16 @@ RCT_EXPORT_METHOD(shareImage:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享本地图片
|
// 分享本地图片
|
||||||
RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareLocalImage
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
NSString *imageUrl = data[@"imageUrl"];
|
NSString *imageUrl = data[@"imageUrl"];
|
||||||
if (imageUrl == NULL || [imageUrl isEqual:@""]) {
|
if (imageUrl == NULL || [imageUrl isEqual:@""]) {
|
||||||
callback([NSArray arrayWithObject:@"shareLocalImage: The value of ImageUrl cannot be empty."]);
|
callback([NSArray arrayWithObject:@"shareLocalImage: The value of ImageUrl cannot be empty."]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
NSRange range = [imageUrl rangeOfString:@"."];
|
NSRange range = [imageUrl rangeOfString:@"."];
|
||||||
if ( range.length == 0)
|
if (range.length == 0) {
|
||||||
{
|
|
||||||
callback([NSArray arrayWithObject:@"shareLocalImage: ImageUrl value, Could not find file suffix."]);
|
callback([NSArray arrayWithObject:@"shareLocalImage: ImageUrl value, Could not find file suffix."]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -356,8 +340,8 @@ RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
|
|||||||
imageObject.imageData = imageData;
|
imageObject.imageData = imageData;
|
||||||
|
|
||||||
WXMediaMessage *message = [WXMediaMessage message];
|
WXMediaMessage *message = [WXMediaMessage message];
|
||||||
// 利用原图压缩出缩略图,确保缩略图大小不大于32KB
|
// 利用原图压缩出缩略图,确保缩略图大小不大于 32KB
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
message.mediaObject = imageObject;
|
message.mediaObject = imageObject;
|
||||||
message.title = data[@"title"];
|
message.title = data[@"title"];
|
||||||
message.description = data[@"description"];
|
message.description = data[@"description"];
|
||||||
@ -367,9 +351,8 @@ RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
|
|||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
// [WXApi sendReq:req];
|
// [WXApi sendReq:req];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -377,9 +360,9 @@ RCT_EXPORT_METHOD(shareLocalImage:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享音乐
|
// 分享音乐
|
||||||
RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareMusic
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXMusicObject *musicObject = [WXMusicObject object];
|
WXMusicObject *musicObject = [WXMusicObject object];
|
||||||
musicObject.musicUrl = data[@"musicUrl"];
|
musicObject.musicUrl = data[@"musicUrl"];
|
||||||
musicObject.musicLowBandUrl = data[@"musicLowBandUrl"];
|
musicObject.musicLowBandUrl = data[@"musicLowBandUrl"];
|
||||||
@ -393,16 +376,15 @@ RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data
|
|||||||
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
||||||
// 根据路径下载图片
|
// 根据路径下载图片
|
||||||
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
}
|
}
|
||||||
message.mediaObject = musicObject;
|
message.mediaObject = musicObject;
|
||||||
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
||||||
req.bText = NO;
|
req.bText = NO;
|
||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -410,9 +392,9 @@ RCT_EXPORT_METHOD(shareMusic:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享视频
|
// 分享视频
|
||||||
RCT_EXPORT_METHOD(shareVideo:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareVideo
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXVideoObject *videoObject = [WXVideoObject object];
|
WXVideoObject *videoObject = [WXVideoObject object];
|
||||||
videoObject.videoUrl = data[@"videoUrl"];
|
videoObject.videoUrl = data[@"videoUrl"];
|
||||||
videoObject.videoLowBandUrl = data[@"videoLowBandUrl"];
|
videoObject.videoLowBandUrl = data[@"videoLowBandUrl"];
|
||||||
@ -422,26 +404,24 @@ RCT_EXPORT_METHOD(shareVideo:(NSDictionary *)data
|
|||||||
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
||||||
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
||||||
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
}
|
}
|
||||||
message.mediaObject = videoObject;
|
message.mediaObject = videoObject;
|
||||||
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
||||||
req.bText = NO;
|
req.bText = NO;
|
||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
[WXApi sendReq:req completion:completion];
|
[WXApi sendReq:req completion:completion];
|
||||||
}
|
}
|
||||||
|
|
||||||
// 分享网页
|
// 分享网页
|
||||||
RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareWebpage
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXWebpageObject *webpageObject = [WXWebpageObject object];
|
WXWebpageObject *webpageObject = [WXWebpageObject object];
|
||||||
webpageObject.webpageUrl = data[@"webpageUrl"];
|
webpageObject.webpageUrl = data[@"webpageUrl"];
|
||||||
WXMediaMessage *message = [WXMediaMessage message];
|
WXMediaMessage *message = [WXMediaMessage message];
|
||||||
@ -450,16 +430,15 @@ RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data
|
|||||||
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
||||||
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
||||||
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
}
|
}
|
||||||
message.mediaObject = webpageObject;
|
message.mediaObject = webpageObject;
|
||||||
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
||||||
req.bText = NO;
|
req.bText = NO;
|
||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] intValue];
|
req.scene = [data[@"scene"] intValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -467,9 +446,9 @@ RCT_EXPORT_METHOD(shareWebpage:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 分享小程序
|
// 分享小程序
|
||||||
RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
|
RCT_EXPORT_METHOD(shareMiniProgram
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXMiniProgramObject *object = [WXMiniProgramObject object];
|
WXMiniProgramObject *object = [WXMiniProgramObject object];
|
||||||
object.webpageUrl = data[@"webpageUrl"];
|
object.webpageUrl = data[@"webpageUrl"];
|
||||||
object.userName = data[@"userName"];
|
object.userName = data[@"userName"];
|
||||||
@ -477,8 +456,8 @@ RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
|
|||||||
NSString *hdImageUrl = data[@"hdImageUrl"];
|
NSString *hdImageUrl = data[@"hdImageUrl"];
|
||||||
if (hdImageUrl != NULL && ![hdImageUrl isEqual:@""]) {
|
if (hdImageUrl != NULL && ![hdImageUrl isEqual:@""]) {
|
||||||
UIImage *image = [self getImageFromURL:hdImageUrl];
|
UIImage *image = [self getImageFromURL:hdImageUrl];
|
||||||
// 压缩图片到小于128KB
|
// 压缩图片到小于 128KB
|
||||||
object.hdImageData = [self compressImage: image toByte:131072];
|
object.hdImageData = [self compressImage:image toByte:131072];
|
||||||
}
|
}
|
||||||
object.withShareTicket = data[@"withShareTicket"];
|
object.withShareTicket = data[@"withShareTicket"];
|
||||||
int miniProgramType = [data[@"miniProgramType"] integerValue];
|
int miniProgramType = [data[@"miniProgramType"] integerValue];
|
||||||
@ -486,21 +465,20 @@ RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
|
|||||||
WXMediaMessage *message = [WXMediaMessage message];
|
WXMediaMessage *message = [WXMediaMessage message];
|
||||||
message.title = data[@"title"];
|
message.title = data[@"title"];
|
||||||
message.description = data[@"description"];
|
message.description = data[@"description"];
|
||||||
//兼容旧版本节点的图片,小于32KB,新版本优先
|
// 兼容旧版本节点的图片,小于 32KB,新版本优先
|
||||||
//使用WXMiniProgramObject的hdImageData属性
|
// 使用 WXMiniProgramObject 的 hdImageData 属性
|
||||||
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
NSString *thumbImageUrl = data[@"thumbImageUrl"];
|
||||||
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
if (thumbImageUrl != NULL && ![thumbImageUrl isEqual:@""]) {
|
||||||
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
UIImage *image = [self getImageFromURL:thumbImageUrl];
|
||||||
message.thumbData = [self compressImage: image toByte:32678];
|
message.thumbData = [self compressImage:image toByte:32678];
|
||||||
}
|
}
|
||||||
message.mediaObject = object;
|
message.mediaObject = object;
|
||||||
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
|
||||||
req.bText = NO;
|
req.bText = NO;
|
||||||
req.message = message;
|
req.message = message;
|
||||||
req.scene = [data[@"scene"] integerValue];
|
req.scene = [data[@"scene"] integerValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -508,27 +486,26 @@ RCT_EXPORT_METHOD(shareMiniProgram:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 一次性订阅消息
|
// 一次性订阅消息
|
||||||
RCT_EXPORT_METHOD(subscribeMessage:(NSDictionary *)data
|
RCT_EXPORT_METHOD(subscribeMessage
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXSubscribeMsgReq *req = [[WXSubscribeMsgReq alloc] init];
|
WXSubscribeMsgReq *req = [[WXSubscribeMsgReq alloc] init];
|
||||||
req.scene = [data[@"scene"] integerValue];
|
req.scene = [data[@"scene"] integerValue];
|
||||||
req.templateId = data[@"templateId"];
|
req.templateId = data[@"templateId"];
|
||||||
req.reserved = data[@"reserved"];
|
req.reserved = data[@"reserved"];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
[WXApi sendReq:req completion:completion];
|
[WXApi sendReq:req completion:completion];
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data
|
RCT_EXPORT_METHOD(launchMiniProgram
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object];
|
WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object];
|
||||||
// 拉起的小程序的username
|
// 拉起的小程序的 username
|
||||||
launchMiniProgramReq.userName = data[@"userName"];
|
launchMiniProgramReq.userName = data[@"userName"];
|
||||||
// 拉起小程序页面的可带参路径,不填默认拉起小程序首页
|
// 拉起小程序页面的可带参路径,不填默认拉起小程序首页
|
||||||
launchMiniProgramReq.path = data[@"path"];
|
launchMiniProgramReq.path = data[@"path"];
|
||||||
@ -536,9 +513,8 @@ RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data
|
|||||||
int miniProgramType = [data[@"miniProgramType"] integerValue];
|
int miniProgramType = [data[@"miniProgramType"] integerValue];
|
||||||
launchMiniProgramReq.miniProgramType = [self integerToWXMiniProgramType:miniProgramType];
|
launchMiniProgramReq.miniProgramType = [self integerToWXMiniProgramType:miniProgramType];
|
||||||
// launchMiniProgramReq.miniProgramType = [data[@"miniProgramType"] integerValue];
|
// launchMiniProgramReq.miniProgramType = [data[@"miniProgramType"] integerValue];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -547,19 +523,18 @@ RCT_EXPORT_METHOD(launchMiniProgram:(NSDictionary *)data
|
|||||||
// callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
// callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(pay:(NSDictionary *)data
|
RCT_EXPORT_METHOD(pay
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSDictionary *)data
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
PayReq* req = [PayReq new];
|
PayReq *req = [PayReq new];
|
||||||
req.partnerId = data[@"partnerId"];
|
req.partnerId = data[@"partnerId"];
|
||||||
req.prepayId = data[@"prepayId"];
|
req.prepayId = data[@"prepayId"];
|
||||||
req.nonceStr = data[@"nonceStr"];
|
req.nonceStr = data[@"nonceStr"];
|
||||||
req.timeStamp = [data[@"timeStamp"] unsignedIntValue];
|
req.timeStamp = [data[@"timeStamp"] unsignedIntValue];
|
||||||
req.package = data[@"package"];
|
req.package = data[@"package"];
|
||||||
req.sign = data[@"sign"];
|
req.sign = data[@"sign"];
|
||||||
void ( ^ completion )( BOOL );
|
void (^completion)(BOOL);
|
||||||
completion = ^( BOOL success )
|
completion = ^(BOOL success) {
|
||||||
{
|
|
||||||
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
callback(@[success ? [NSNull null] : INVOKE_FAILED]);
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
@ -569,24 +544,23 @@ RCT_EXPORT_METHOD(pay:(NSDictionary *)data
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 跳转微信客服
|
// 跳转微信客服
|
||||||
RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
|
RCT_EXPORT_METHOD(openCustomerServiceChat
|
||||||
:(NSString *)kfUrl
|
: (NSString *)corpId
|
||||||
:(RCTResponseSenderBlock)callback)
|
: (NSString *)kfUrl
|
||||||
{
|
: (RCTResponseSenderBlock)callback) {
|
||||||
WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init];
|
WXOpenCustomerServiceReq *req = [[WXOpenCustomerServiceReq alloc] init];
|
||||||
req.corpid = corpId; //企业ID
|
req.corpid = corpId; // 企业 ID
|
||||||
req.url = kfUrl; //客服URL
|
req.url = kfUrl; // 客服 URL
|
||||||
[WXApi sendReq:req completion:nil];
|
[WXApi sendReq:req completion:nil];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - wx callback
|
#pragma mark - wx callback
|
||||||
|
|
||||||
-(void) onReq:(BaseReq*)req
|
- (void)onReq:(BaseReq *)req {
|
||||||
{
|
|
||||||
if ([req isKindOfClass:[LaunchFromWXReq class]]) {
|
if ([req isKindOfClass:[LaunchFromWXReq class]]) {
|
||||||
LaunchFromWXReq *launchReq = req;
|
LaunchFromWXReq *launchReq = req;
|
||||||
NSString *appParameter = launchReq.message.messageExt;
|
NSString *appParameter = launchReq.message.messageExt;
|
||||||
NSMutableDictionary *body = @{@"errCode":@0}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @0 }.mutableCopy;
|
||||||
body[@"type"] = @"LaunchFromWX.Req";
|
body[@"type"] = @"LaunchFromWX.Req";
|
||||||
body[@"lang"] = launchReq.lang;
|
body[@"lang"] = launchReq.lang;
|
||||||
body[@"country"] = launchReq.country;
|
body[@"country"] = launchReq.country;
|
||||||
@ -595,59 +569,56 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void) onResp:(BaseResp*)resp
|
- (void)onResp:(BaseResp *)resp {
|
||||||
{
|
if ([resp isKindOfClass:[SendMessageToWXResp class]]) {
|
||||||
if([resp isKindOfClass:[SendMessageToWXResp class]])
|
|
||||||
{
|
|
||||||
SendMessageToWXResp *r = (SendMessageToWXResp *)resp;
|
SendMessageToWXResp *r = (SendMessageToWXResp *)resp;
|
||||||
|
|
||||||
NSMutableDictionary *body = @{@"errCode":@(r.errCode)}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
|
||||||
body[@"errStr"] = r.errStr;
|
body[@"errStr"] = r.errStr;
|
||||||
body[@"lang"] = r.lang;
|
body[@"lang"] = r.lang;
|
||||||
body[@"country"] =r.country;
|
body[@"country"] = r.country;
|
||||||
body[@"type"] = @"SendMessageToWX.Resp";
|
body[@"type"] = @"SendMessageToWX.Resp";
|
||||||
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
||||||
} else if ([resp isKindOfClass:[SendAuthResp class]]) {
|
} else if ([resp isKindOfClass:[SendAuthResp class]]) {
|
||||||
SendAuthResp *r = (SendAuthResp *)resp;
|
SendAuthResp *r = (SendAuthResp *)resp;
|
||||||
NSMutableDictionary *body = @{@"errCode":@(r.errCode)}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
|
||||||
body[@"errStr"] = r.errStr;
|
body[@"errStr"] = r.errStr;
|
||||||
body[@"state"] = r.state;
|
body[@"state"] = r.state;
|
||||||
body[@"lang"] = r.lang;
|
body[@"lang"] = r.lang;
|
||||||
body[@"country"] =r.country;
|
body[@"country"] = r.country;
|
||||||
body[@"type"] = @"SendAuth.Resp";
|
body[@"type"] = @"SendAuth.Resp";
|
||||||
|
|
||||||
if (resp.errCode == WXSuccess) {
|
if (resp.errCode == WXSuccess) {
|
||||||
if (self.appId && r) {
|
if (self.appId && r) {
|
||||||
// ios第一次获取不到appid会卡死,加个判断OK
|
// ios 第一次获取不到 appid 会卡死,加个判断 OK
|
||||||
[body addEntriesFromDictionary:@{@"appid":self.appId, @"code":r.code}];
|
[body addEntriesFromDictionary:@{ @"appid": self.appId, @"code": r.code }];
|
||||||
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
||||||
}
|
}
|
||||||
} else if ([resp isKindOfClass:[PayResp class]]) {
|
} else if ([resp isKindOfClass:[PayResp class]]) {
|
||||||
PayResp *r = (PayResp *)resp;
|
PayResp *r = (PayResp *)resp;
|
||||||
NSMutableDictionary *body = @{@"errCode":@(r.errCode)}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
|
||||||
body[@"errStr"] = r.errStr;
|
body[@"errStr"] = r.errStr;
|
||||||
body[@"type"] = @(r.type);
|
body[@"type"] = @(r.type);
|
||||||
body[@"returnKey"] =r.returnKey;
|
body[@"returnKey"] = r.returnKey;
|
||||||
body[@"type"] = @"PayReq.Resp";
|
body[@"type"] = @"PayReq.Resp";
|
||||||
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
||||||
} else if ([resp isKindOfClass:[WXLaunchMiniProgramResp class]]){
|
} else if ([resp isKindOfClass:[WXLaunchMiniProgramResp class]]) {
|
||||||
WXLaunchMiniProgramResp *r = (WXLaunchMiniProgramResp *)resp;
|
WXLaunchMiniProgramResp *r = (WXLaunchMiniProgramResp *)resp;
|
||||||
NSMutableDictionary *body = @{@"errCode":@(r.errCode)}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
|
||||||
body[@"errStr"] = r.errStr;
|
body[@"errStr"] = r.errStr;
|
||||||
body[@"extMsg"] = r.extMsg;
|
body[@"extMsg"] = r.extMsg;
|
||||||
body[@"type"] = @"WXLaunchMiniProgramReq.Resp";
|
body[@"type"] = @"WXLaunchMiniProgramReq.Resp";
|
||||||
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
[self.bridge.eventDispatcher sendDeviceEventWithName:RCTWXEventName body:body];
|
||||||
} else if ([resp isKindOfClass:[WXChooseInvoiceResp class]]){
|
} else if ([resp isKindOfClass:[WXChooseInvoiceResp class]]) {
|
||||||
WXChooseInvoiceResp *r = (WXChooseInvoiceResp *)resp;
|
WXChooseInvoiceResp *r = (WXChooseInvoiceResp *)resp;
|
||||||
NSMutableDictionary *body = @{@"errCode":@(r.errCode)}.mutableCopy;
|
NSMutableDictionary *body = @{ @"errCode": @(r.errCode) }.mutableCopy;
|
||||||
body[@"errStr"] = r.errStr;
|
body[@"errStr"] = r.errStr;
|
||||||
NSMutableArray *arr = [[NSMutableArray alloc] init];
|
NSMutableArray *arr = [[NSMutableArray alloc] init];
|
||||||
for (WXCardItem* cardItem in r.cardAry) {
|
for (WXCardItem *cardItem in r.cardAry) {
|
||||||
NSMutableDictionary *item = @{@"cardId":cardItem.cardId,@"encryptCode":cardItem.encryptCode,@"appId":cardItem.appID}.mutableCopy;
|
NSMutableDictionary *item = @{ @"cardId": cardItem.cardId, @"encryptCode": cardItem.encryptCode, @"appId": cardItem.appID }.mutableCopy;
|
||||||
[arr addObject:item];
|
[arr addObject:item];
|
||||||
}
|
}
|
||||||
body[@"cards"] = arr;
|
body[@"cards"] = arr;
|
||||||
@ -656,7 +627,7 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
-(WXMiniProgramType) integerToWXMiniProgramType:(int)value {
|
- (WXMiniProgramType)integerToWXMiniProgramType:(int)value {
|
||||||
WXMiniProgramType type = WXMiniProgramTypeRelease;
|
WXMiniProgramType type = WXMiniProgramTypeRelease;
|
||||||
switch (value) {
|
switch (value) {
|
||||||
case 0:
|
case 0:
|
||||||
@ -673,4 +644,3 @@ RCT_EXPORT_METHOD(openCustomerServiceChat:(NSString *)corpId
|
|||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user