使用友盟社会化分享IOS版SDK分享纯图片到微信

本文和上一篇友盟社会化分享Android版是兄弟篇。其实本人用的是友盟Cocos2d-x的IOS版。对于普通IOS版如何分享纯图片到微信朋友圈,官网文档中已经说明的比较清楚,但是在Cocos2d-x版中并未做出说明。如果不加以设置,默认分享类型是一条图文链接。其实无论是普通IOS版,还是Cocos2d-x版,它们设置分享类型的Objective C方法是一致的,只不过在Cocos2d-x版中要寻找一个途径,跟C++代码结合起来。


本文默认读者已经阅读过友盟的官方文档,已经掌握默认的分享集成方法。


设置纯图片分享类型的Objective C方法是

[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeImage;
对于普通IOS版,可以很容易找个地方来调用上面这个方法。对于Cocos2d-x版,需要稍微琢磨一下。和上一篇Android版一致,在调用了打开分享面板函数openShare()之后,可以调用setPlatformShareContent()对某个指定平台的分享内容进行单独设置。比如下面的代码就实现对微信朋友圈的分享内容进行单独设置:

分享按钮的回调函数体内部

// 获取一个CCUMSocialSDK实例  
CCUMSocialSDK *sdk = CCUMSocialSDK::create("你的友盟app key");  
  
//设置微信app id和app key  
sdk->setWeiXinAppInfo("你的微信app id","你的微信app key");  
sdk->setLogEnable(true);  
sdk->setTargetUrl("你的分享链接");  
  
// 设置友盟分享面板上显示的平台  
vector<int>* platforms = new vector<int>();  
platforms->push_back(WEIXIN);  
platforms->push_back(WEIXIN_CIRCLE);  
  
// 设置平台, 在调用分享、授权相关的函数前必须设置SDK支持的平台  
sdk->setPlatforms(platforms) ;  
  
// 打开分享面板, 注册分享回调  
sdk->openShare("你的分享文字", "你的分享图片路径", share_selector(shareCallback1));  
  
//设置微信朋友圈分享内容  
sdk->setPlatformShareContent(WEIXIN_CIRCLE, "你的分享文字",  
                             "你的分享图片路径", "你的分享标题", "你的分享链接");  

但是此时分享的仍然是一条图文链接,因为我们还没有调用前面提到的方法对默认分享类型进行覆盖。注意,“你的分享标题”(而非“你的分享文字”)才是出现在图文链接上的文字。跟进setPlatformShareContent()这个函数(它是CCUMSocialSDK的类成员函数),我们发现它又调用了一个UmSocialControllerIOS类下面的方法setPlatformShareContent()。这是一个Objective C类方法,所以我们就可以在该方法中调用之前提到的那个设置分享类型的方法了。



水平有限,如有不妥,敬请拍砖!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值