zoukankan      html  css  js  c++  java
  • 友盟分享

    —————————————集成—————————————
    1. 导入框架包
     
    2.Appdelegate.m 中做配置
         
               1)#import "UMSocial.h"  //友盟SDK

         #import "UMSocialWechatHandler.h"//微信SDK
         #import "UMSocialSinaHandler.h"//新浪微博SDK

        
         2)
         - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
              if ([url.description hasPrefix:@"gocom"]) {
                             //你自己的逻辑
                   }
                   else {
            return [UMSocialSnsService handleOpenURL:url];
        }
    }
         3)
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions      
        //添加友盟
         [UMSocialData setAppKey:IMShareMsgUMKey];
        //设置微信AppId,设置分享url,默认使用友盟的网址
        [UMSocialWechatHandler setWXAppId:IMShareWechatKey url:IMShareWechatUrl];
        //打开新浪微博的SSO开关
        [UMSocialSinaHandler openSSOWithRedirectURL:IMShareSinaUrl];
     
         4)
    - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
    {
        return  [UMSocialSnsService handleOpenURL:url];
    }
         5)
     
     
     
     
    —————————————方法实现—————————————
    #pragma mark 图片 文本 分享
    /**
     *  打开分享到其他平台的列表
     *
     *  @param sender 待分享的消息 (IMMsg)
     */
    - (void)openShareList:(NSNotification *)sender
    {
       
        NSLog(@"正在打开分享列表");
        IMMsg *msg = [sender object];
        NSString *text = nil;
        UIImage *image = nil;
        //文本类型
        if (msg.msgType == IMMsgTypeText)
        {
            [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeText;
            IMTextMsg * textMsg = (IMTextMsg *)msg;
            text = textMsg.msgBody;
        }
        //图片类型
        else if (msg.msgType == IMMsgTypePic)
        {
         [UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeImage;
        IMPicMsg *picMsg = [sender object];
        NSString *path = picMsg.originPicLocalPath;
        image = [UIImage imageWithContentsOfFile:path];
        }
        [UMSocialSnsService presentSnsIconSheetView:self
                                             appKey:IMShareMsgUMKey
                                          shareText:text
                                         shareImage:image
                                    shareToSnsNames:[NSArray arrayWithObjects:UMShareToSina,UMShareToWechatSession,UMShareToWechatTimeline,UMShareToRenren,nil]
                                           delegate:nil];
    }
    //    [[UMSocialControllerService defaultControllerService] setShareText:@"底层接口分享测试" shareImage:nil socialUIDelegate:self];
    //    //设置分享内容和回调对象
    //    [UMSocialSnsPlatformManager getSocialPlatformWithName:UMShareToWechatTimeline].snsClickHandler(self,[UMSocialControllerService defaultControllerService],YES);
       
       
    //    UMSocialUrlResource *urlResource = [[UMSocialUrlResource alloc] initWithSnsResourceType:UMSocialUrlResourceTypeDefault url:@"http://www.baidu.com"];
    //    [[UMSocialDataService defaultDataService]  postSNSWithTypes:@[UMShareToWechatTimeline] content:@"test test" image:nil location:nil urlResource:urlResource presentedController:self completion:^(UMSocialResponseEntity *response){
    //        if (response.responseCode == UMSResponseCodeSuccess) {
    //            NSLog(@"分享成功!");
    //        }
    //    }];
  • 相关阅读:
    JS对文本框值的判断
    PostgreSQL导出表中数据
    postgreSQL中跨库查询在windows下的实现方法
    获取表中每个编号最新一条数据的集合
    开源跨平台声波传输库:Sonic
    Windows下配置cygwin和ndk编译环境
    char的定义在iOS和Android下是不同的
    stdout引发的curl 302跳转 crash
    WebBrowser内嵌页面的跨域调用问题
    【已解决】Ubuntu 12.04 LTS Source安装nodejs时出现"bash ./configure permission denied"
  • 原文地址:https://www.cnblogs.com/yjg2014/p/3850948.html
Copyright © 2011-2022 走看看