1、下载sdk,导入sdk(libWeChatSDK.a,WXApi.h,WXApiObject.h 三个文件添加到你所建的工程中)
2、添加必须的系统框架
微信开放平台新增了微信模块用户统计功能,便于开发者统计微信功能模块的用户使用和活跃情况。开发者需要在工程中链接上:SystemConfiguration.framework,libz.dylib,libsqlite3.0.dylib,libc++.dylib
3、链接微信的库
在你的工程文件中选择Build Setting,在Search Paths中添加 libWeChatSDK.a ,WXApi.h,WXApiObject.h 三个文件所在位置
如果只是集成分享功能只需要链接WXApi.h即可
4、
在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序id
程序id为开发者平台所注册的程序的AppID
5、在appdelegate.m中导入WXApi.h,并注册应用[WXApi registerApp:@"your appID"];
6、在需要调用的界面导入WXApi.h,如果分享的是文字
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.text = _myTextView.text;
req.bText = YES;
req.scene = WXSceneTimeline;
[WXApi sendReq:req];
其它方法应该差不多吧
遇到的问题:开始步骤完全一样,下载的demo就可以正常调用微信,而我写的就是没有反应,找了好多方法都不行,最后卸载程序重新安装,搞定,最后发现是由于分享的文字为空的原因,如果分享的文字或者图片为空则不会调用微信
二、分享图片
WXMediaMessage *message = [WXMediaMessage message];
[message setThumbImage:[UIImage imageNamed:@"图片.png"]];
WXImageObject *imageObject = [WXImageObject object];
// NSString *filePath = [[NSBundle mainBundle] pathForResource:@"micro_small@2x" ofType:@"png"];
UIImage *image = [self capture];
imageObject.imageData = UIImagePNGRepresentation(image);//真是数据
message.mediaObject = imageObject;
SendMessageToWXReq *req = [[SendMessageToWXReq alloc]init];
req.bText = NO;
req.message = message;
req.scene = WXSceneTimeline;
[WXApi sendReq:req];
截屏方法
//获取屏幕截屏方法
- (UIImage *)capture
{
// 创建一个context
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, self.view.opaque, 0.0);
//把当前的全部画面导入到栈顶context中并进行渲染
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
// 从当前context中创建一个新图片
UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
return img;
}
网友评论