美文网首页代码人生
第三方分享之微信

第三方分享之微信

作者: 木夜溯 | 来源:发表于2015-11-25 10:40 被阅读1493次

由于微信的普及,微信是一种最常用的第三方分享工具。

1. 微信可以分享多种类型分享类型

微信第三方分享可以分享的类型有文本,图片,网页,应用,音频,视频等。对应的数据类型如下:

WXAppExtendObject            多媒体消息中包含的App扩展数据对象

WXEmoticonObject                多媒体消息中包含的表情数据对象

WXFileObject                         多媒体消息中包含的文件数据对象

WXImageObject                     多媒体消息中包含的图片数据对象

WXMediaMessage                 多媒体消息结构体

WXMusicObject                     多媒体消息中包含的音乐数据对象

WXVideoObject                      多媒体消息中包含的视频数据对象

WXWebpageObject                 多媒体消息中包含的网页数据对象

2. 微信分享消息体构建:

SendMessageToWXReq 

第三方程序发送消息至微信终端程序的接口

第三方程序向微信发送信息需要调用此接口,并传入具体请求类型作为参数。请求的信息内容包括文本消息和多媒体消息, 分别对应于text和message成员。调用该方法后,微信处理完信息会向第三方程序发送一个处理结果。

发送文本类型示例

SendMessageToWXReq* req = [[[SendMessageToWXReqalloc]init]autorelease];

req.text=@"XXXXXX";

req.bText=YES;

req.scene=_scene;

发送图片类型示例:

WXMediaMessage*message = [WXMediaMessage message];

[message  setThumbImage:[UIImageimageNamed:@"res5thumb.png"]];

WXImageObject *ext = [WXImageObjectobject];

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"res5thumb" ofType:@"png"];

ext.imageData = [NSData dataWithContentsOfFile:filePath];

UIImage * image = [UIImage imageWithData:ext.imageData];

ext.imageData=UIImagePNGRepresentation(image);

message.mediaObject= ext;

SendMessageToWXReq* req = [[[SendMessageToWXReqalloc]init]autorelease];

req.bText=NO;

req.message= message;

req.scene=_scene;

[WXApisendReq:req];

app指定打开: 在微信中直接打开app。

WXMediaMessage*message = [WXMediaMessagemessage];

message.title=@"App消息";

message.description=@"这种消息只有App自己才能理解,由App指定打开方式!";

[messagesetThumbImage:[UIImageimageNamed:@"res2.jpg"]];

WXAppExtendObject*ext = [WXAppExtendObjectobject];

ext.extInfo=@"extend info";

ext.url=@"http://weixin.qq.com";


Byte* pBuffer = (Byte*)malloc(BUFFER_SIZE);

memset(pBuffer,0,BUFFER_SIZE);

NSData* data = [NSDatadataWithBytes:pBufferlength:BUFFER_SIZE];

free(pBuffer);

ext.fileData= data;   //如果此参数不设置,app跳转无效,直接跳到url


message.mediaObject= ext;

GetMessageFromWXResp* resp = [[[GetMessageFromWXRespalloc]init]autorelease];

resp.message= message;

resp.bText=NO;

[WXApisendResp:resp];

3. �与微信终端交互的具体请求与回应

与微信交互需要实现WXApiDelegate协议的两个方法

-(void) onReq:(BaseReq*)reqonReq是微信终端向第三方程序发起请求,要求第三方程序响应。第三方程序响应完后必须调用sendRsp返回。在调用sendRsp返回时,会切回到微信终端程序界面。

-(void) onResp:(BaseResp*)resp如果第三方程序向微信发送了sendReq的请求,那么onResp会被回调。sendReq请求调用后,会切到微信终端程序界面。

相关文章

  • 第三方分享之微信

    由于微信的普及,微信是一种最常用的第三方分享工具。 1. 微信可以分享多种类型分享类型 微信第三方分享可以分享的类...

  • 微信原生分享链接获取网络图片处理

    集成原生微信分享,要保证分享的图片大小不能超过32K 做完微信登录和微信分享之后,经验就是能用第三方,尽量用第三方...

  • Android-分享常见问题

    分享使用的SDK:均为官方SDK,个人建议不使用第三方分享库。 一、微信、新浪微博分享图片过大无法分享异常? 微信...

  • 微信平台简介

    微信开放平台 移动应用网站应用第三方平台功能微信登录 微信支付 分享收藏微信登录N/A其他拉起小程序 图像识...

  • 微信分享 QQ分享(自带)

    微信分享 1、注册第三方软件 + (BOOL) registerApp:(NSString *) appidwit...

  • iOS 开发第三方分享

    1.第三方分享介绍 通常我们项目中使用最多的分享有 QQ,QQ 空间,微信,微信朋友圈,微博等这些主流类的分享.我...

  • 功能:微信分享至好友&朋友圈

    多数应用需要有微信分享的功能,一般是分享至好友或者是朋友圈。微信开放平台提供了接入微信分享的第三方SDK,...

  • ios最好用的第三方分享集成框架

    ios最好用的第三方分享集成框架 ios一般项目中都会有第三方分享功能,微信好友 朋友圈 新浪微博 分享 链接,图...

  • iOS-微信的登录与分享

    微信登录与分享微信开发平台-移动应用微信登录开发指南1、首先导入微信的SDK 5、向微信终端程序注册第三方应用,并...

  • 微信新版功能大盘点(你想知道的都在这里)

    一、微信(群)聊天更新点 1,支持『引用』对话; 2,分享公众号将显示来源; 3,任何分享出来的微信图文/第三方文...

网友评论

  • 2df775d6aa49:2017最新方案,外部链接可以直接WAP跳转到微信中打开链接,支持支付接入,可携带支付参数完成付款,支持安卓和IOS,方法我已经系统化,直接给普通用户提供API接口,需要的可以直接找我拿 QQ 7 7 4 0 8 0 2 6
    微信疑难工具http://www.api-export.com/

本文标题:第三方分享之微信

本文链接:https://www.haomeiwen.com/subject/cborhttx.html