微信分享集成

2016-06-07  本文已影响184人  火星的蝈蝈

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;

}

上一篇下一篇

猜你喜欢

热点阅读