友盟社會化組件遇到的問題


1、因為部分界面分享平台不同,有的需要包含微信朋友圈和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)]];

 

2、使用UMShareWebpageObject分享url的時候,發現有時候可以分享成功,有時會分享失敗

解決方案

  UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject]; 

  NSString* thumbURL =  _imgHeadUrl;//網絡圖片
     NSURL *url =[NSURL URLWithString:thumbURL];
     NSData *tempData =[NSData dataWithContentsOfURL:url];//將網絡圖片轉化為nsdata
     UMShareWebpageObject *shareObject = [UMShareWebpageObject shareObjectWithTitle:@"標題" descr:@"描述" thumImage:tempData];
     //設置網頁地址
     NSString *newUlr = [_shareUrlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
     shareObject.webpageUrl =  newUlr;
    
     //分享消息對象設置分享內容對象
     messageObject.shareObject = shareObject;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM