因为部分界面分享平台不同,有的需要包含微信朋友圈和qq空间,有的不需要
接入旧版本友盟SDK时,为了满足需求,在不需要微信朋友圈和QQ空间的地方使用代码
[[UMSocialManager defaultManager] removePlatformProviderWithPlatformType:UMSocialPlatformType_WechatFavorite];//微信收藏
[[UMSocialManager defaultManager] removePlatformProviderWithPlatformType:UMSocialPlatformType_WechatTimeLine];//微信朋友圈
[[UMSocialManager defaultManager] removePlatformProviderWithPlatformType:UMSocialPlatformType_Qzone];//QQ空间
- 换了最新的6.4.2版本后,发现如果使用了removePlatformProviderWithPlatformType后,所有界面调用友盟分享时微信朋友圈、qq空间、微信收藏都不见了。
解决方案:
在不需要微信朋友圈、qq空间的界面:
[UMSocialUIManager setPreDefinePlatforms:@[@(UMSocialPlatformType_QQ),@(UMSocialPlatformType_WechatSession)]];
[UMSocialUIManager showShareMenuViewInWindowWithPlatformSelectionBlock:^(UMSocialPlatformType platformType, NSDictionary *userInfo) {
//在回调里面获得点击的
[self shareWebPageToPlatformType:platformType];
}];
在需要微信朋友圈、qq空间的界面:
[UMSocialUIManager setPreDefinePlatforms:@[@(UMSocialPlatformType_QQ),@(UMSocialPlatformType_WechatSession),@(UMSocialPlatformType_WechatTimeLine),@(UMSocialPlatformType_Qzone)]];