• 分享微信及朋友圈(基于友盟)


     加入微信及朋友圈

    2.1  注冊应用

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

    2.2  加入相关文件

    UMSocial_Sdk_Extra_Frameworks文件夹下,加入Wechat文件夹到project

    2.3  加入微信

    2.3.1  加入微信及朋友圈到分享列表

    在你的程序APPdelegate入口方法加入以下的代码

      #import "UMSocialWechatHandler.h"
        //设置微信AppId、appSecret,分享url
        [UMSocialWechatHandler setWXAppId:@"wxd930ea5d5a258f4f" appSecret:@"db426a9829e4b49a0dcac7b4162da6b6" url:@"http://www.umeng.com/social"];
    
    
    • 假设不加入上面的代码。则分享列表中不会出现微信及朋友圈图标
    • URL必须为http链接,假设设置为nil则默觉得友盟官网链接

    2.3.2  配置URL schemes

    在你的project设置项,targets 一栏下,选中自己的 target,在 Info->URL Types 中加入 URL Schemes,加入xcode的url scheme为微信应用appId,比如“wxd9a39c7122aa6516”

    2.3.3  加入系统回调

    在APPdelegate中实现以下两个系统回调方法:

    - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
    {
     return  [UMSocialSnsService handleOpenURL:url];    
    }
    - (BOOL)application:(UIApplication *)application 
                  openURL:(NSURL *)url 
        sourceApplication:(NSString *)sourceApplication
               annotation:(id)annotation
     {
     return  [UMSocialSnsService handleOpenURL:url];
     }  
    
    

    2.4  设置分享内容

    2.4.1  默认分享样式

    使用友盟默认分享UI页面,分享到微信好友、微信朋友圈、微信收藏

        [UMSocialSnsService presentSnsIconSheetView:self
                                              appKey:你的友盟应用Appkey
                                           shareText:@"友盟社会化分享让您高速实现分享等社会化功能,www.umeng.com/social"
                                          shareImage:[UIImage imageNamed:@"icon.png"]
                                  shareToSnsNames:@[UMShareToWechatSession,UMShareToWechatTimeline,UMShareToWechatFavorite]
                                        delegate:self]; 
        //实现回调方法(可选):
        -(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
        {
                //依据`responseCode`得到发送结果,假设分享成功
                if(response.responseCode == UMSResponseCodeSuccess)
                {
                    //得到分享到的微博平台名
                    NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
                }      
        }
    
    

    2.4.2  自己定义分享样式

    使用自己定义分享面板,则在对于的微信分享button中实现以下的方法

        //使用UMShareToWechatSession,UMShareToWechatTimeline,UMShareToWechatFavorite分别代表微信好友、微信朋友圈、微信收藏
        [[UMSocialDataService defaultDataService]  postSNSWithTypes:@[UMShareToWechatSession] content:@"分享内嵌文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
            if (response.responseCode == UMSResponseCodeSuccess) {
                NSLog(@"分享成功。");
            }
        }];
    
    

    2.4.3  设置点击分享内容跳转链接

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

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

    假设是朋友圈,则替换平台參数名就可以

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

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

    2.4.4  设置title

    设置微信好友title方法为

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

    设置微信朋友圈title方法替换平台參数名就可以

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

    微信朋友圈分享消息仅仅显示title

    2.4.5  设置分享消息类型

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

    纯图片分享类型方法为

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeImage;
    
    

    纯图片分享类型没有文字。点击图片能够查看大图

    纯文字分享类型方法为

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeText;
    
    

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

    应用分享类型方法

    [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeApp;
    
    

    应用分享类型点击分享内容后跳转到应用下载页面,下载地址自己主动抓取开发人员在微信开放平台填写的应用地址,假设用户已经安装应用。则打开APP

  • 相关阅读:
    Java操作redis
    Ajax & Json
    【转载】K8s-Pod时区与宿主时区时区同步
    【转载】Python中如何将字符串作为变量名
    【转载】python实现dubbo接口的调用
    机器学习避坑指南:训练集/测试集分布一致性检查
    机器学习深度研究:特征选择中几个重要的统计学概念
    机器学习数学基础:学习线性代数,千万不要误入歧途!推荐一个正确学习路线
    被 Pandas read_csv 坑了
    print('Hello World!')的新玩法
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5308060.html
Copyright © 2020-2023  润新知