ShareViewController.m 7.56 KB
//
//  ShareViewController.m
//  Lighting
//
//  Created by mac on 16/5/23.
//  Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//

#import "ShareViewController.h"

@interface ShareViewController ()

@end

@implementation ShareViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self initSubview];
   
}
-(void)initSubview
{
    self.weiXinFriend=[[UIButton alloc]initWithFrame:CGRectMake(25, 25,60 , 60)];
    [self.weiXinFriend setBackgroundImage:[UIImage imageNamed:@"wechat"] forState:UIControlStateNormal];
    self.weiXinFriend.tag=101;
    [self.weiXinFriend addTarget:self action:@selector(sharePicture:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:self.weiXinFriend];
    UILabel *lable1=[[UILabel alloc]initWithFrame:CGRectMake(25+5, 90, 60, 40)];
    lable1.text=@"微信好友";
    lable1.font=[UIFont systemFontOfSize:12];
    [self.view addSubview:lable1];
    
    self.weiXinFriendCircle=[[UIButton alloc]initWithFrame:CGRectMake(25+25+60, 25,60 , 60)];
    [self.weiXinFriendCircle setBackgroundImage:[UIImage imageNamed:@"Friends-Circle"] forState:UIControlStateNormal];
    self.weiXinFriendCircle.tag=102;
    [self.weiXinFriendCircle addTarget:self action:@selector(sharePicture:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:self.weiXinFriendCircle];
    UILabel *lable2=[[UILabel alloc]initWithFrame:CGRectMake(25+25+60, 90, 60, 40)];
    lable2.text=@"微信朋友圈";
    lable2.font=[UIFont systemFontOfSize:12];
    [self.view addSubview:lable2];
    
    self.sinaMicroBlog=[[UIButton alloc]initWithFrame:CGRectMake(25+25+60+25+60, 25,60 , 60)];
    [self.sinaMicroBlog setBackgroundImage:[UIImage imageNamed:@"weibo"] forState:UIControlStateNormal];
    self.sinaMicroBlog.tag=103;
    [self.sinaMicroBlog addTarget:self action:@selector(sharePicture:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:self.sinaMicroBlog];
    UILabel *lable3=[[UILabel alloc]initWithFrame:CGRectMake(25+25+60+25+60+5, 90, 60, 40)];
    lable3.text=@"新浪微博";
    lable3.font=[UIFont systemFontOfSize:12];
    [self.view addSubview:lable3];

}

#pragma mark -分享
-(void)sharePicture:(UIButton*)sender
{

    [self dismissViewControllerAnimated:YES completion:nil];
    NSData *imageData = UIImageJPEGRepresentation(self.shareImage, 1.0);
//    0b44439e5504e371015504f73d4f0025,0b44439e5504e371015504feae270028
    NSDictionary *parameterDict = [NSDictionary dictionaryWithObjectsAndKeys:self.goodsIDs,@"goodsIds",@"",@"title",@"",@"remark",nil];
    
    //上传图片
    [[NetworkRequestClassManager Manager] UploadImageWithURL:[NSString stringWithFormat:@"%@%@",ServerAddress,@"/system/shareGoods"] WithRequestType:0 WithImageDatas:imageData WithParameter:parameterDict WithReturnValueBlock:^(id returnValue) {
        
        if ([returnValue[@"code"] isEqualToNumber:@0]) {
            
            NSString *shareWeb = returnValue[@"data"][@"url"];
            switch (sender.tag) {
                case 101: //微信好友
                {//自定义样式
                    
                    //使用UMShareToWechatSession,UMShareToWechatTimeline,UMShareToWechatFavorite分别代表微信好友、微信朋友圈、微信收藏
                    [UMSocialData defaultData].extConfig.wechatSessionData.url = shareWeb;
                    [[UMSocialDataService defaultDataService]  postSNSWithTypes:@[UMShareToWechatSession] content:ShareTitle image:self.shareImage location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
                        if (response.responseCode == UMSResponseCodeSuccess) {
                            
                            [self SuccessMBProgressView:@"分享微信好友成功"];
                        }
                    }];
                }
                    
                    break;
                case 102://微信朋友圈
                {
                    //使用UMShareToWechatSession,UMShareToWechatTimeline,UMShareToWechatFavorite分别代表微信好友、微信朋友圈、微信收藏
                    [UMSocialData defaultData].extConfig.wechatTimelineData.url = shareWeb;
                    [[UMSocialDataService defaultDataService]  postSNSWithTypes:@[UMShareToWechatTimeline] content:ShareTitle image:self.shareImage location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
                        if (response.responseCode == UMSResponseCodeSuccess) {
                            
                            [self SuccessMBProgressView:@"分享微信朋友圈成功"];
                        }
                    }];
                }
                    break;
                case 103://新浪微博
                {
                    
                    //自定义分享样式
                    [UMSocialData defaultData].extConfig.sinaData.shareText = [NSString stringWithFormat:@"%@%@",@"欧普照明",shareWeb];
                    [[UMSocialDataService defaultDataService]  postSNSWithTypes:@[UMShareToSina] content:ShareTitle image:self.shareImage location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *shareResponse){
                        if (shareResponse.responseCode == UMSResponseCodeSuccess) {
                            
                            [self SuccessMBProgressView:@"分享新浪微博成功"];
                        }
                    }];
                }
                    
                    break;
                default:
                    break;
            }
        }else
        {
            if ([self.delegate respondsToSelector:@selector(CodeNotEqualZero:)]) {
                
                [self.delegate CodeNotEqualZero:returnValue[@"message"]];
            }
        }
        
    }WithprogressBlock:^(double progress) {
        
        if (progress >= 1) {
            
            if ([self.delegate respondsToSelector:@selector(UploadImageSuccess)]) {
                
                [self.delegate UploadImageSuccess];
            }
            
        }else
        {
            if ([self.delegate respondsToSelector:@selector(UploadImageProgress:)]) {
                
                [self.delegate UploadImageProgress:progress];
            }
        }
        
    } WithErrorCodeBlock:^(id errorCodeValue) {
        
    } WithFailureBlock:^(NSError *error) {
        
        if ([self.delegate respondsToSelector:@selector(UploadImageFailue)]) {
            
            [self.delegate UploadImageFailue];
        }
    }];
}
//实现回调方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
    //根据`responseCode`得到发送结果,如果分享成功
    if(response.responseCode == UMSResponseCodeSuccess)
    {
        //得到分享到的微博平台名
        NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
    }
}
- (void)viewDidDisappear:(BOOL)animated;
{
    if ([self.delegate respondsToSelector:@selector(resetShareBtn)]) {
        [self.delegate resetShareBtn];
    }
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end