由于项目中有音频播放功能,自然需要分享音频,集成友盟分享之后,发现音频分享功能除了微信好友
有点小意外之外,其他都很正常(朋友圈都可以,可恶),
在翻遍友盟集成文档以及微信开放平台之后,发现并没有提到这个问题,这真是让人恼火。最后在友盟论坛找到原因,仅仅是原因而已,没有解决方案(尴尬
)
近期微信官方对音乐类型的分享增加了白名单限制,会导致不在白名单内的APP分享音乐类型失败.
出现这种情况,需要和微信官方进行申请,将音乐url加入白名单内,才可以进行正常分享
有其他问题可以看这里
友盟+分享组件90%常见问题汇总
拨打了腾讯的人工服务之后,找到了解决方案
分享音频文件出现红色感叹号,无法分享成功
音乐类appmsg的分享功能需进行申请。申请时请提供appid以及对应的url发送至邮箱(weixin-open@qq.com),处理时间3个工作日,请耐心等待。
原地址
分享音频文件出现红色感叹号,无法分享成功
然后就是抱着必过的心态等待了几天,结果是这样的(心碎
)
询问我们后台之后,发现我们的服务器是阿里云
的,现在后台以及定格,只有我们前端想办法解决。所以我们想既然不可以音频分享,但是我们可以网页分享,以下为官方demo
//网页分享
- (void)shareWebPageToPlatformType:(UMSocialPlatformType)platformType
{
//创建分享消息对象
UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject];
//创建网页内容对象
NSString* thumbURL = UMS_THUMB_IMAGE;
UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:UMS_Title descr:UMS_Web_Desc thumImage:thumbURL];
//修改这里 --- 设置音乐网页播放地址
shareObject.webpageUrl = UMS_MusicLink;
//分享消息对象设置分享内容对象
messageObject.shareObject = shareObject;
#ifdef UM_Swift
[UMSocialSwiftInterface shareWithPlattype:platformType messageObject:messageObject viewController:self completion:^(UMSocialShareResponse * data, NSError * error) {
#else
//调用分享接口
[[UMSocialManager defaultManager] shareToPlatform:platformType messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
#endif
if (error) {
UMSocialLogInfo(@"************Share fail with error %@*********",error);
}else{
if ([data isKindOfClass:[UMSocialShareResponse class]]) {
UMSocialShareResponse *resp = data;
//分享结果消息
UMSocialLogInfo(@"response message is %@",resp.message);
//第三方原始返回的数据
UMSocialLogInfo(@"response originalResponse data is %@",resp.originalResponse);
}else{
UMSocialLogInfo(@"response data is %@",data);
}
}
[self alertWithError:error];
}];
}
对比之下的结果
音频分享.png
虽然不可以在界面内按播放,但是其他还是正常的,也算是一种解决办法!
网友评论