美文网首页
ios umeng 添加微信及朋友圈

ios umeng 添加微信及朋友圈

作者: babybus_break | 来源:发表于2016-06-07 14:20 被阅读663次

    1、使用微信分享首先需要在微信开放平台(点击链接)申请, 按照要求填写应用信息,审核通过后获取到微信APPID和APPsecret

    在APPdelegate.m文件中增加对应下面的配置

    #import "UMSocial.h" 
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
         //设置友盟社会化组件appkey 
         [UMSocialData setAppKey:UmengAppkey]; 
         //设置微信AppId、appSecret,分享url 
         [UMSocialWechatHandler  setWXAppId:@"wxd930ea5d5a258f4f" appSecret:@"db426a9829e4b49a0dcac7b4162da6b6" url:@"http://www.umeng.com/social"]; 
    }
    

    1.2 配置系统回调
    在APPdelegate.m中增加下面的系统回调配置,注意如果同时使用微信支付、支付宝等其他需要改写回调代理的SDK,请在if分支下做区分,否则会影响 分享、登录的回调

    - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{ 
            BOOL result = [UMSocialSnsService handleOpenURL:url];          
            if (result == FALSE) { 
                    //调用其他SDK,例如支付宝SDK等 
            }
            return result;
    }
    

    1.3 配置URL scheme
    在你的工程设置项,targets 一栏下,选中自己的 target,在 Info->URL Types 中添加 URL Schemes。如果使用的是Xcode3或更低版本,则需要在plist文件中添加。获取各个平台appkey或者appid的方法可以参考分享详细文档绑定各个平台部分,各个平台的url scheme格式如下表:

    0E3FA2A7-BC18-48AC-AF9D-88DA6393D274.png 0654C854-B9D7-416C-B86E-92619E4E3ED8.png

    1.4 设置分享文本、图片
    1.4.1 使用默认UI风格
    打开需要集成分享功能的视图源码UIViewController.m
    ,把如下代码复制并粘贴到你将弹出一个分享列表的位置,例如到响应分享按钮的方法中。并且修改下面的友盟appkey,你要分享的文字、图片,你要分享到的微博平台,例如下面写的是新浪微博、QQ、微信。

                //UMShareToWechatSession(微信好友),UMShareToWechatTimeline(微信朋友圈),UMShareToWechatFavorite(微信收藏)
                [[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToWechatSession] content:@""内容 image:[UIImage imageNamed:@"图片"] location:位置 urlResource:资源链接 presentedController:(UIViewController *)app.rootViewController completion:^(UMSocialResponseEntity *shareResponse){
                    if (shareResponse.responseCode == UMSResponseCodeSuccess) {
                        NSLog(@"分享成功!");
                    }
                }];
    

    这里只介绍这种分享,还有其他的类型的分享,
    UMSocialDataService.h中有,详细的介绍。

    注意: 1. 支持分享编辑页和授权页面横屏,必须要在出现列表页面前设置:

    [UMSocialConfig setSupportedInterfaceOrientations:UIInterfaceOrientationMaskLandscape];
    

    默认为竖屏的。

    实现回调方法。

    -(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response{ 
            //根据`responseCode`得到发送结果,如果分享成功          
            if(response.responseCode == UMSResponseCodeSuccess) { //得到分享到的平台名     
                      NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
             } 
    }
    

    处理分享错误
    用下面的代码打开我们SDK在控制台的输出后能看到相应的错误码。

    [UMSocialData openLog:YES];
    

    2.0 添加相关文件

    2.1在UMSocial_Sdk_Extra_Frameworks目录下,添加Wechat文件夹到工程

    添加SDK依赖的系统库文件。

    在Xcode中打开工程配置文件,选择“summary”一栏。在“summary”中选择“Linked Frameworks and Libraries”一栏,点击“+”图标添加下面八个库文件,分别是:
    Security.framework
    libiconv.dylib
    SystemConfiguration.framework
    CoreGraphics.Framework
    libsqlite3.dylib
    CoreTelephony.framework
    libstdc++.dylib
    libz.dylib

    2.2 设置点击分享内容跳转链接
    当分享消息类型为图文时,点击分享内容会跳转到预设的链接,设置方法如下

    [UMSocialData defaultData].extConfig.wechatSessionData.url = @"http://baidu.com";
    

    如果是朋友圈,则替换平台参数名即可

    [UMSocialData defaultData].extConfig.wechatTimelineData.url = @"http://baidu.com";
    

    注意设置的链接必须为http或https链接

    2.3 设置title
    设置微信好友title方法为

    [UMSocialData defaultData].extConfig.wechatSessionData.title = @"微信好友title";
    

    设置微信朋友圈title方法替换平台参数名即可

    [UMSocialData defaultData].extConfig.wechatTimelineData.title = @"微信朋友圈title";
    

    2.4 设置分享消息类型
    微信分享消息类型分为图文、纯图片、纯文字、应用三种类型,默认分享类型为图文分享,即展示分享文字及图片缩略图,点击后跳转到预设链接

    纯图片分享类型方法为

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeImage;
    

    纯图片分享类型没有文字,点击图片可以查看大图

    纯文字分享类型方法为

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeText;
    

    纯文字分享类型没有图片,点击不会跳转

    应用分享类型方法

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeApp;
    

    应用分享类型如果用户已经安装应用,则打开APP,如果为安装APP,则提示未安装或跳转至微信开放平台

    相关文章

      网友评论

          本文标题:ios umeng 添加微信及朋友圈

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