友盟分享纯图片的坑


友盟分享纯图片的坑


Error Domain=UMSocialPlatformErrorDomain Code=2014 "(null)" UserInfo={message=you must using https url, for support the new strategy of AppStore.}


原因:

4.1  HTTP图片发送失败

由于ATS的原因,所有HTTP链接在SDK内都被禁止,并提示错误告知非https图片不可分享,请使用https图片,保证ATS环境下可以顺畅的进行分享操作。分享图片方式如下 1. 分享图片仅适用本地图片加载,如UIImageNSData数据传输。 2. 如需使用网络图片确保URLHTTPS图片链接,以便于U-Share SDK下载并进行分享,否则会分享失败。


/** 友盟三方平台 分享  图片

 *  platformType  平台

 *  shareImage  图片内容 (可以是UIImage类对象,也可以是NSdata类对象,也可以是图片链接imageUrl NSString类对象(必须是https))

 *  thumbImage  缩略图 可以是网络地址url  也可是本地图片对象

 */

- (void)shareImageToPlatformType:(UMSocialPlatformType)platformType shareImage:(id)shareImage thumbImage:(id)thumbImage

{

    

    if (platformType == 111) {

        // 保存图片到相册

        [QDAppdelegate saveImageToPhotosAlumFinished:[shareImage isKindOfClass:[UIImage class]] ? shareImage : [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:shareImage]]]];

        return;

    }

    if ([self judgementThirdPlatformType:platformType]) { //检测客服端是否安装

        //创建分享消息对象

        UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject];

        

        //创建图片内容对象

        UMShareImageObject *shareObject = [[UMShareImageObject alloc] init];

        //设置缩略图

        shareObject.thumbImage = thumbImage;

        

        // ⚠️注意:分享图片方式如下: 1. 分享图片仅适用本地图片加载,如UIImage或NSData数据传输。 2. 如需使用网络图片,确保URL为HTTPS图片链接,以便于U-Share SDK下载并进行分享,否则会分享失败。

        [shareObject setShareImage:shareImage];

        

        //分享消息对象设置分享内容对象

        messageObject.shareObject = shareObject;

        

        //调用分享接口

        [[UMSocialManager defaultManager] shareToPlatform:platformType messageObject:messageObject currentViewController:[HFUtils presentingVC] completion:^(id data, NSError *error) {

            if (error) {

                NSLog(@"************Share fail with error %@*********",error);

            }else{

                NSLog(@"************Share Success*********”);

            }

        }];

    }

}

你可能感兴趣的:(iOS,三方平台)