iOS 微信分享功能简单实现

2020-01-18 19:42:47王振洲

6.接下来就可以测试一下是否和微信接通了 以下是几个常见的问题

1)如果编译不通过显示以下错误信息

iOS,微信,分享

解决办法:添加libc++.tbd

iOS,微信,分享

2)如果无法跳转至微信

iOS,微信,分享

根据提示信息显示可能有两种情况

1 iOS跳转到其他APP使用的是URL Scheme,在iOS9新特性中加入了URL Scheme白名单功能,需要把要跳转的APP的URL Scheme加入到当前工程的跳转白名单中,具体操作请看URL Scheme 白名单

2 当前机器中没有安装微信

可以使用WXApi.h中的isWxAppInstalled方法来判断当前机器是否安装了微信,从而做出相应操作

iOS,微信,分享

7.如果没有其他问题点击分享按钮后就会提示打开微信并进行分享操作 如图

iOS,微信,分享

当分享完成后会回到APP 调用最开始注册的"wx1234567890"为URL Scheme,因此也应该把此key添加到当前工程的URL Scheme(否则无法跳转回到原APP)

iOS,微信,分享

8.分享完成后的回调操作

1)实现代理

iOS,微信,分享

2)从微信端打开第三方APP会调用此方法,此方法再调用代理的onResp方法


- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
 return [WXApi handleOpenURL:url delegate:self];
}

- (void)onResp:(BaseResp *)resp {
//把返回的类型转换成与发送时相对于的返回类型,这里为SendMessageToWXResp
SendMessageToWXResp *sendResp = (SendMessageToWXResp *)resp;
//使用UIAlertView 显示回调信息
NSString *str = [NSString stringWithFormat:@"%d",sendResp.errCode];
UIAlertView *alertview = [[UIAlertView alloc] initWithTitle:@"回调信息" message:str delegate:self cancelButtonTitle:@"确认" otherButtonTitles:nil, nil];
[alertview show];
}

3)到这里我们就可以看到微信回调的信息了