由於蘋果審核政策需求,建議大家對未安裝客戶端平台進行隱藏,在設置QQ、微信AppID之後調用下面的方法,[UMSocialConfig hiddenNotInstallPlatforms:@[UMShareToQQ, UMShareToQzone, UMShareToWechatSession, UMShareToWechatTimeline]]; 這個接口只對默認分享面板平台有隱藏功能,自定義分享面板或登錄按鈕需要自己處理友盟分享sdk5.2.1已經兼容ipv6,請大家升級sdk,避免無法通過APPstore審核>
安裝SDK可以采用CocoaPods和手動下載兩種方式,選擇下面其中一種來集成即可
在Podfile中增加一行,內容如下:
pod 'UMengSocialCOM', '~> 5.2.1'
然後執行安裝即可
pod install
如果是1.0版本以上pod需要增加下面的配置
target:工程名稱 do
platform :ios,'5.0'
pod 'UMengSocialCOM', '~> 5.2.1'
end
下載最新版SDK
解壓SDK壓縮包,將形如UMSocial_Sdk_x.x.x的文件夾拖入工程目錄:
確認勾選了“Copy items to destination's group folder”選項,並選擇你要添加到的Target:
現在應該是這樣的效果:
UMSocial_Sdk_x.x.x 文件夾的目錄結構
UMSocial_Sdk_Extra_Frameworks 文件夾的目錄結構
添加SDK後需要手動添加系統庫SystemConfiguration.framework
在other linker flags增加-ObjC 選項,並添加ImageIO 系統framework(實現新浪微博必須完成的步驟)
在Xcode中打開工程配置文件,選擇“summary”一欄。在“summary”中選擇“Linked Frameworks and Libraries”一欄,點擊“+”圖標添加下面八個庫文件,分別是
獲取友盟Appkey。如果你之前已經在友盟注冊了應用,獲得了Appkey,可以繼續使用之前獲得Appkey。
如果你尚未在友盟注冊賬號,需要先注冊,注冊之後登錄你的賬號,點擊添加新應用
,完成新應用填寫之後,將進入應用管理頁面。在該頁面就能得到Appkey
。
AppDelegate
文件內設置你的AppKey:
#import "UMSocial.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UMSocialData setAppKey:@"507fcab25270157b37000010"];
}
這裡只列出最常用的微信、QQ及新浪微博的配置方法,其他平台如Facebook等請參考對應文檔配置, 申請平台APPID請直接參考文檔申請第三方賬號
在APPdelegate.m文件中增加對應下面的配置
#import "UMSocial.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//設置友盟社會化組件appkey
[UMSocialData setAppKey:UmengAppkey];
//設置微信AppId、appSecret,分享url
[UMSocialWechatHandler setWXAppId:@"wxd930ea5d5a258f4f" appSecret:@"db426a9829e4b49a0dcac7b4162da6b6" url:@"http://www.umeng.com/social"];
//設置手機QQ 的AppId,Appkey,和分享URL,需要#import "UMSocialQQHandler.h"
[UMSocialQQHandler setQQWithAppId:@"100424468" appKey:@"c7394704798a158208a74ab60104f0ba" url:@"http://www.umeng.com/social"];
//打開新浪微博的SSO開關,設置新浪微博回調地址,這裡必須要和你在新浪微博後台設置的回調地址一致。需要 #import "UMSocialSinaSSOHandler.h"
[UMSocialSinaSSOHandler openNewSinaSSOWithAppKey:@"3921700954"
secret:@"04b48b094faeb16683c32669824ebdad"
RedirectURL:@"http://sns.whalecloud.com/sina2/callback"];
}
在APPdelegate.m中增加下面的系統回調配置,注意如果同時使用微信支付、支付寶等其他需要改寫回調代理的SDK,請在if分支下做區分,否則會影響 分享、登錄的回調
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes。如果使用的是Xcode3或更低版本,則需要在plist文件中添加。獲取各個平台appkey或者appid的方法可以參考分享詳細文檔綁定各個平台部分,各個平台的url scheme格式如下表:
打開需要集成分享功能的視圖源碼UIViewController.m
,把如下代碼復制並粘貼到你將彈出一個分享列表的位置,例如到響應分享按鈕的方法中。並且修改下面的友盟appkey,你要分享的文字、圖片,你要分享到的微博平台,例如下面寫的是新浪微博、QQ、微信。
//如果需要分享回調,請將delegate對象設置self,並實現下面的回調方法
[UMSocialData defaultData].extConfig.title = @"分享的title";
[UMSocialData defaultData].extConfig.qqData.url = @"http://baidu.com";
[UMSocialSnsService presentSnsIconSheetView:self
appKey:@"507fcab25270157b37000010"
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:[UIImage imageNamed:@"icon"]
shareToSnsNames:@[UMShareToWechatSession,UMShareToWechatTimeline,UMShareToSina,UMShareToQQ,UMShareToQzone]
delegate:self];
代碼中配置的URL為點擊分享內容後的跳轉鏈接,只配置了QQ的分享URL,有其他平台配置需要的開發者可以自行修改參數,如微信平台將qqData
替換為wechatSessionData
代碼中只配置了微信、新浪、QQ、Qzone、朋友圈,有其他平台需要的參考對應的文檔
需要分享URL圖片資源的開發者參考下面的代碼
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeImage url:@"http://www.baidu.com/img/bdlogo.gif"];
[UMSocialData defaultData].extConfig.title = @"分享的title";
[UMSocialData defaultData].extConfig.qqData.url = @"http://baidu.com";
[UMSocialSnsService presentSnsIconSheetView:self
appKey:@"507fcab25270157b37000010"
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:[UIImage imageNamed:@"icon"]
shareToSnsNames:@[UMShareToWechatSession,UMShareToWechatTimeline,UMShareToSina,UMShareToQQ,UMShareToQzone]
delegate:self];
注意當URL圖片和UIImage同時存在時,只有URL圖片生效
現在會出現效果:
注意: 1. 支持分享編輯頁和授權頁面橫屏,必須要在出現列表頁面前設置:
[UMSocialConfig setSupportedInterfaceOrientations:UIInterfaceOrientationMaskLandscape];
實現回調方法
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
//需要自定義面板樣式的開發者需要自己繪制UI,在對應的分享按鈕中調用此接口
[UMSocialData defaultData].extConfig.title = @"分享的title";
[UMSocialData defaultData].extConfig.qqData.url = @"http://baidu.com";
UMSocialUrlResource *urlResource = [[UMSocialUrlResource alloc] initWithSnsResourceType:UMSocialUrlResourceTypeImage url:
@"http://www.baidu.com/img/bdlogo.gif"];
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToQQ] content:@"分享內嵌文字" image:nil location:nil urlResource:urlResource presentedController:self completion:^(UMSocialResponseEntity *shareResponse){
if (shareResponse.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
設置支持的屏幕方向
支持分享編輯頁和授權頁面橫屏,必須要在出現列表頁面前進行下面,並在Xcode上的xxx_info.plist文件支持屏幕方向的字段'Supported interface orientations'增加相應的橫屏或者豎屏的枚舉值。
//根據你要支持的方向,UIInterfaceOrientationMaskLandscape設置成相應的方向
[UMSocialConfig setSupportedInterfaceOrientations:UIInterfaceOrientationMaskLandscape];
處理分享錯誤
用下面的代碼打開我們SDK在控制台的輸出後能看到相應的錯誤碼。
[UMSocialData openLog:YES];
使用微信分享首先需要在微信開放平台(點擊鏈接)申請, 按照要求填寫應用信息,審核通過後獲取到微信APPID和APPsecret
在UMSocial_Sdk_Extra_Frameworks
目錄下,添加Wechat
文件夾到工程
添加SDK依賴的系統庫文件。
在Xcode中打開工程配置文件,選擇“summary”一欄。在“summary”中選擇“Linked Frameworks and Libraries”一欄,點擊“+”圖標添加下面八個庫文件,分別是
在你的程序APPdelegate入口方法添加下面的代碼
#import "UMSocialWechatHandler.h"
//設置微信AppId、appSecret,分享url
[UMSocialWechatHandler setWXAppId:@"wxd930ea5d5a258f4f" appSecret:@"db426a9829e4b49a0dcac7b4162da6b6" url:@"http://www.umeng.com/social"];
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,添加xcode的url scheme為微信應用appId,例如“wxd9a39c7122aa6516”
在APPdelegate中實現下面兩個系統回調方法:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
設置分享文本、圖片的代碼在前文中已經描述,這裡不再復述
當分享消息類型為圖文時,點擊分享內容會跳轉到預設的鏈接,設置方法如下
[UMSocialData defaultData].extConfig.wechatSessionData.url = @"http://baidu.com";
如果是朋友圈,則替換平台參數名即可
[UMSocialData defaultData].extConfig.wechatTimelineData.url = @"http://baidu.com";
注意設置的鏈接必須為http或https鏈接
設置微信好友title方法為
[UMSocialData defaultData].extConfig.wechatSessionData.title = @"微信好友title";
設置微信朋友圈title方法替換平台參數名即可
[UMSocialData defaultData].extConfig.wechatTimelineData.title = @"微信朋友圈title";
微信朋友圈分享消息只顯示title
微信分享消息類型分為圖文、純圖片、純文字、應用三種類型,默認分享類型為圖文分享,即展示分享文字及圖片縮略圖,點擊後跳轉到預設鏈接
純圖片分享類型方法為
[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeImage;
純圖片分享類型沒有文字,點擊圖片可以查看大圖
純文字分享類型方法為
[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeText;
純文字分享類型沒有圖片,點擊不會跳轉
應用分享類型方法
[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeApp;
應用分享類型如果用戶已經安裝應用,則打開APP,如果為安裝APP,則提示未安裝或跳轉至微信開放平台
在微博開放平台(點擊鏈接)注冊應用,完整填寫相關應用信息,並且審核通過,未審核應用會遇到5034錯誤碼,詳情參考文檔
注意工程bundle ID必須和微博開放平台填寫一致,否則會提示網絡錯誤或sso package or sign error
解壓SDK壓縮包,將形如UMSocial_Sdk_x.x.x的文件夾拖入工程目錄
解壓下載文件夾,將SinaSSO
文件夾添加到工程。
在other linker flags增加-ObjC 選項,並添加ImageIO 系統framework
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,格式為“wb”+新浪appkey,例如“wb126663232”
在APPdelegate中添加下面的代碼
#import "UMSocialSinaSSOHandler.h"
//第一個參數為新浪appkey,第二個參數為新浪secret,第三個參數是新浪微博回調地址,這裡必須要和你在新浪微博後台設置的回調地址一致。
[UMSocialSinaSSOHandler openNewSinaSSOWithAppKey:@"3921700954"
secret:@"04b48b094faeb16683c32669824ebdad"
RedirectURL:@"http://sns.whalecloud.com/sina2/callback"];
回調URL必須和後台保持一致,否則會返回錯誤碼21322
在APPdelegate中實現下面的回調方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
分享本地gif圖片到各個開放平台,需要生成把本地gif圖片生成NSData
對象,作為各個分享方法的shareImage參數,例如快速分享接口如下寫法。
分享png、jpg圖片則只需要生成UIImage,傳入到shareImage參數,不能使用這種寫法。
//分享gif圖片
NSString *path = [[NSBundle mainBundle] pathForResource:@"picName"
ofType:@"gif"];
NSData *gifData = [NSData dataWithContentsOfFile:path];
[UMSocialSnsService presentSnsIconSheetView:self appKey:UmengAppkey shareText:shareText shareImage:gifData shareToSnsNames:@[UMShareToSina] delegate:self];
//分享png、jpg圖片
[UMSocialSnsService presentSnsIconSheetView:self appKey:UmengAppkey shareText:shareText shareImage:[UIImage imageNamed:@"picName"] shareToSnsNames:@[UMShareToSina] delegate:self];
分享URL音樂資源將UrlResourceType
設置為Music即可
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeMusic url:@"http://music.huoxing.com/upload/20130330/1364651263157_1085.mp3"];
//調用快速分享接口
分享URL視頻資源將UrlResourceType
設置為Video即可
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeVideo url:@"http://v.youku.com/v_show/id_XNjQ1NjczNzEy.html?f=21207816&ev=2"];
//調用快速分享接口
在授權頁面中顯示關注官方微博的復選頁面,只在第一次授權時出現,需要在微博開放平台設置官方運營微博
使用QQ及Qzone分享首先在騰訊開放平台注冊應用,地址:http://open.qq.com按照要求填寫,審核通過前需要添加測試賬號,否則會報錯110406或110404
在UMSocial_Sdk_Extra_Frameworks
目錄下的,添加TencentOpenAPI
文件夾到工程 添加下面幾個系統framework
在Xcode中打開工程配置文件,選擇“summary”一欄。在“summary”中選擇“Linked Frameworks and Libraries”一欄,點擊“+”圖標添加下面八個庫文件,分別是
在 Xcode7下庫後綴名可能不同
在AppDelegate應用入口方法打開集成手機QQ、Qzone開關
//設置分享到QQ/Qzone的應用Id,和分享url 鏈接
#import "UMSocialQQHandler.h"
[UMSocialQQHandler setQQWithAppId:@"100424468" appKey:@"c7394704798a158208a74ab60104f0ba" url:@"http://www.umeng.com/social"];
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,設置Xcode的url scheme格式為“QQ”+騰訊QQ互聯應用appId轉換成十六進制(不足8位前面補0),例如“QQ05FC5B14”。 額外設置 url schemes 的格式為"tencent"+騰訊QQ互聯應用appId,例如“tencent100424468”
如果 URL schemes 配置錯誤,則分享完成後無法返回應用
在Xcode 6.0創建工程時,默認可能沒有單獨設置Bundle display name屬性值。但是因為SDK需要用到Bundle display name的值,所以務必請檢查確保這個屬性存在,如果沒有請添加上。
在APPdelegate中實現下面的方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
Qzone分享文字與圖片缺一不可,否則會出現錯誤碼10001
QQ設置點擊分享內容跳轉鏈接調用下面的方法
[UMSocialData defaultData].extConfig.qqData.url = @"http://baidu.com";
Qzone設置點擊分享內容跳轉鏈接替換平台參數名即可
[UMSocialData defaultData].extConfig.qzoneData.url = @"http://baidu.com";
QQ設置title方法為
[UMSocialData defaultData].extConfig.qqData.title = @"QQ分享title";
Qzone設置title方法將平台參數名替換即可
[UMSocialData defaultData].extConfig.qzoneData.title = @"Qzone分享title";
QQ分享消息類型分為圖文、純圖片,QQ空間分享只支持圖文分享(圖片文字缺一不可)
QQ分享消息默認為圖文類型,設置純圖片類型方法為
[UMSocialData defaultData].extConfig.qqData.qqMessageType = UMSocialQQMessageTypeImage;
在調用分享代碼前調用即可
友盟社會化組件支持的國內分享平台包括:新浪、微信及朋友圈、QQ及Qzone、騰訊微博、人人網、豆瓣、短信、郵件、支付寶、易信和來往,這裡針對 常用的平台做出使用方法說明
使用友盟默認提供的分享面板,調用下面的代碼,在平台數組shareToSnsNames
裡傳遞自己需要的平台參數即可,這裡的示例裡 會展示騰訊微博、人人網、豆瓣、郵件和短信
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToTencent,UMShareToRenren,UMShareToDouban,UMShareToEmail,UMShareToSms]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
自定義分享樣式,可以在自己定義的分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToTencent] content:@"分享內嵌文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *shareResponse){
if (shareResponse.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
支付寶錢包從9.0版本開始支持分享,友盟分享SDK中已經判斷當前設備能否支持分享到支付寶錢包
在支付寶開放平台注冊應用,完整填寫相關應用信息,並且審核通過獲取AppID,未審核應用無法拿到AppID
注意工程bundle ID配置必須和支付寶開放平台配置一致添加UMSocial_Sdk_Extra_Frameworks
目錄下的AlipayShare
文件夾到工程
在AppDelegate應用入口方法打開集成支付寶
#import "UMSocialAlipayShareHandler.h"
// 設置支付寶分享的appId
[UMSocialAlipayShareHandler setAlipayShareAppId:@"2015111700822536”];
在APPdelegate中實現下面的方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK
}
return result;
}
當前支付寶sdk支持分享到朋友,分享類型為文本、圖片及連接
[UMSocialData defaultData].extConfig.alipaySessionData.alipayMessageType = UMSocialAlipayMessageTypeText;
[UMSocialData defaultData].extConfig.alipaySessionData.shareText = @"友盟社會化組件可以讓移動應用快速具備社會化分享、登錄、評論、喜歡等功能,並提供實時、全面的社會化數據統計分析服務。 http://www.umeng.com/social"
// 圖片分享,設置分享類型為圖片並傳入參數,圖片對象在下面分享接口中傳入
[UMSocialData defaultData].extConfig.alipaySessionData.alipayMessageType = UMSocialAlipayMessageTypeImage;
// 如果是網絡圖片,需要設置
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeImage url:@"http://www.umeng.com/images/pic/home/social/banner.png];
[UMSocialData defaultData].extConfig.alipaySessionData.alipayMessageType = UMSocialAlipayMessageTypeWeb;
[UMSocialData defaultData].extConfig.alipaySessionData.title = @"shareTitle";
[UMSocialData defaultData].extConfig.alipaySessionData.url = @"http://umeng.com/social”;
調用分享面板
NSString *shareText = @"友盟社會化組件可以讓移動應用快速具備社會化分享、登錄、評論、喜歡等功能,並提供實時、全面的社會化數據統計分析服務。 http://www.umeng.com/social"; //分享內嵌文字
UIImage *shareImage = [UIImage imageNamed:@"UMS_social_demo"]; //分享內嵌圖片
//調用快速分享接口
[UMSocialSnsService presentSnsIconSheetView:self
appKey:UmengAppkey
shareText:shareText
shareImage:shareImage
shareToSnsNames:nil
delegate:self];
使用自定義分享界面,在對應的支付寶分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToAlipaySession] content:shareText image:image location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把YiXin
文件夾添加到工程
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,格式為易信Appkey,例如“yx35664bdff4db42c2b7be1e29390c1a06”
在APPdelegate中實現下面的回調方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
在APPdelegate中添加下面的方法
//設置易信Appkey和分享url地址,注意需要引用頭文件 #import UMSocialYixinHandler.h
[UMSocialYixinHandler setYixinAppKey:@"yx35664bdff4db42c2b7be1e29390c1a06" url:@"http://www.umeng.com/social"];
使用默認分享界面調用下面的方法,其中UMShareToYXSession
代表易信好友,UMShareToYXTimeline
代表易信朋友圈
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToYXSession,UMShareToYXTimeline]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,則在對應的按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToYXSession] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
上述代碼為分享到易信好友,易信朋友圈將平台參數UMShareToYXSession
替換為UMShareToYXTimeline
即可
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把LaiWang
文件夾添加到工程
在你的工程設置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,Identifier填“Laiwang”,URL Schemes填來往AppId.注意使用來往SDK後,Xcode工程other linker flags需要添加-ObjC參數
在APPdelegate中實現下面的回調方法
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
在APPdelegate中添加下面的方法
//設置來往AppId,appscret,顯示來源名稱和url地址,注意需要引用頭文件 #import "UMSocialLaiwangHandler.h"
[UMSocialLaiwangHandler setLaiwangAppId:@"8112117817424282305" appSecret:@"9996ed5039e641658de7b83345fee6c9" appDescription:@"友盟社會化組件" urlStirng:@"http://www.umeng.com/social"];
使用默認分享界面調用下面的方法,其中UMShareToLWSession
代表來往好友,UMShareToLWTimeline
代表來往動態
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToLWSession,UMShareToLWTimeline]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,則在對應的按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToLWSession] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
上述代碼為分享到來往好友,來往動態將平台參數UMShareToLWSession
替換為UMShareToLWTimeline
即可
友盟社會化組件支持多個國外分享平台,包括Facebook、Twitter、Instagram、Line、Whatsapp、Tumblr,其中Facebook和Twitter分享支持應用內網頁分享,其余平台僅支持跳轉客戶端分享。
Facebook SDK需在iOS7.0以上系統集成
使用默認分享界面調用下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToFacebook]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面在對應的Facebook分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToFacebook] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
在Facebook開放平台(點擊鏈接) 注冊你的facebook應用,注意在你的應用Native iOS App填寫Bundle ID
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Facebook
文件夾添加到工程,添加系統Framework:Accounts.framework
和Social.framework
在你的工程設置項,targets 一欄下,選中自己的 target,在Info中加入一條key為FacebookAppID,value的格式為fb”+facebook AppID,如“fb1440390216179601”,以及key為FacebookDisplayName,value為在Facebook後台設置的Display Name,如UmengShare。在 Info->URL Types 中添加 URL Schemes,設置Xcode的url scheme格式為“fb”+facebook AppID,例如“fb1440390216179601”
注:適配iOS9的配置詳見適配iOS9系統
在APPdelegate中實現下面的回調
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
BOOL result = [UMSocialSnsService handleOpenURL:url];
if (result == FALSE) {
//調用其他SDK,例如支付寶SDK等
}
return result;
}
在AppDelegate的入口方法增加下面代碼
//設置Facebook,AppID和分享url,需要#import "UMSocialFacebookHandler.h"
[UMSocialFacebookHandler setFacebookAppID:@"1440390216179601" shareFacebookWithURL:@"http://www.umeng.com/social"];
設置分享內容方法和調用系統Facebook分享相同
使用默認分享界面分享調用下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToTwitter]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對於的Twitter分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToTwitter] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Twitter
文件夾添加到工程,如果支持iOS6系統,需要添加系統Framework:Accounts.framework
、CoreData.framework
和Social.framework
在AppDelegate的入口方法設置:
#import "UMSocialTwitterHandler.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//默認使用iOS自帶的Twitter分享framework,在iOS 6以上有效。若要使用我們提供的twitter分享需要使用此開關:
[UMSocialTwitterHandler openTwitter];
// 集成的TwitterSDK僅在iOS7.0以上有效,在iOS 6.x上自動調用系統內置Twitter授權
if (UMSYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
[UMSocialTwitterHandler setTwitterAppKey:@"fB5tvRpna1CKK97xZUslbxiet" withSecret:@"YcbSvseLIwZ4hZg9YmgJPP5uWzd4zr6BpBKGZhf07zzh3oj62K"];
}
}
設置分享內容方法與使用Twitter SDK分享相同
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Instagram
文件夾添加到工程
在AppDelegate的入口方法設置:
#import "UMSocialInstagramHandler.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UMSocialInstagramHandler openInstagramWithScale:NO paddingColor:[UIColor blackColor]];
}
使用默認分享界面調用下面的方法
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToInstagram]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義界面,在對應的Instagram
分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToInstagram] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Line
文件夾添加到工程
在AppDelegate的入口方法設置:
#import "UMSocialLineHandler.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//分享到line,只能分享純文本消息或者純圖片消息
[UMSocialLineHandler openLineShare:UMSocialLineMessageTypeImage];
}
使用默認分享界面,添加下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToLine]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對應的Line
分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToLine] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Whatsapp
文件夾添加到工程
在AppDelegate的入口方法設置:
#import "UMSocialLineHandler.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//分享到whatsapp,只能分享純文本消息或者純圖片消息
[UMSocialWhatsappHandler openWhatsapp:UMSocialWhatsappMessageTypeImage];
}
使用默認分享界面,添加下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,www.umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToWhatsapp]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對應的Whapsapp
分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToWhatsapp] content:@"分享文字" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
注意:我們采用打開Tumblr客戶端方式分享到Tumblr,由於Tumblr客戶端沒有兼容iOS8,因此在iOS8上分享失敗
解壓下載文件夾,在UMSocial_Sdk_Extra_Frameworks
目錄下,把Tumblr
文件夾添加到工程
在AppDelegate的入口方法設置
#import "UMSocialTumblrHandler.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UMSocialTumblrHandler openTumblr];
}
目前分享到Tumblr支持三種類型:圖文(圖片+文字)、博文(標題+文字)和鏈接(標題+url鏈接+url描述)
設置圖文分享
NSString *shareText = @"友盟社會化組件可以讓移動應用快速具備社會化分享、登錄、評論、喜歡等功能,並提供實時、全面的社會化數據統計分析服務。 http://www.umeng.com/social"; //分享內嵌文字
// 不能使用imageNamed:方法讀取圖片
UIImage *image = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"UMS_social_demo" ofType:@"png"]];
使用默認分享界面,添加下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:shareText
shareImage:image
shareToSnsNames:@[UMShareToTumblr]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對應的Tumblr
分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToTumblr] content:@"shareText" image:image location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
設置博文分享
[UMSocialData defaultData].extConfig.tumblrData.title = @"share tumblr title";
NSString *shareText = @"友盟社會化組件可以讓移動應用快速具備社會化分享、登錄、評論、喜歡等功能,並提供實時、全面的社會化數據統計分析服務。 http://www.umeng.com/social";
設置鏈接分享
[UMSocialData defaultData].extConfig.tumblrData.link = @"http://www.umeng.com/social";
[UMSocialData defaultData].extConfig.tumblrData.linkDescription = @"友盟社會化組件可以讓移動應用快速具備社會化分享、登錄、評論、喜歡等功能,並提供實時、全面的社會化數據統計分析服務。";
所有Tumblr分享類型都可在分享中添加tag
[UMSocialData defaultData].extConfig.tumblrData.tags = @[@"Umeng", @"Share"];
隨後使用默認分享界面,添加下面的代碼
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:shareText
shareImage:image
shareToSnsNames:@[UMShareToTumblr]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對應的Tumblr分享按鈕中實現下面的方法
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToTumblr] content:shareText image:image location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
在分享按鈕中實現下面的方法
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:[UIImage imageNamed:@"icon.png"]
shareToSnsNames:@[UMShareToSina,UMShareToTencent,UMShareToRenren,UMShareToDouban,UMShareToEmail]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
[UMSocialConfig setSupportedInterfaceOrientations:UIInterfaceOrientationMaskLandscape]
;
需要使用自定義分享界面,可以在對應的分享按鈕中調用下面的方法,如新浪微博
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToSina] content:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social" image:nil location:nil urlResource:nil presentedController:self completion:^(UMSocialResponseEntity *response){
if (response.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
其他平台替換UMShareToSina
如騰訊微博則替換為UMShareToTencent
各平台參數列表為
使用默認分享界面,使用下面的代碼
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeImage url:@"http://www.baidu.com/img/bdlogo.gif"];
//調用快速分享接口
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:nil
shareToSnsNames:@[UMShareToSina]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
使用自定義分享界面,在對應平台分享按鈕中實現下面的方法
UMSocialUrlResource *urlResource = [[UMSocialUrlResource alloc] initWithSnsResourceType:UMSocialUrlResourceTypeImage url:
@"http://www.baidu.com/img/bdlogo.gif"];
[[UMSocialDataService defaultDataService] postSNSWithTypes:@[UMShareToSina] content:@"分享內嵌文字" image:nil location:nil urlResource:urlResource presentedController:self completion:^(UMSocialResponseEntity *shareResponse){
if (shareResponse.responseCode == UMSResponseCodeSuccess) {
NSLog(@"分享成功!");
}
}];
分享其他平台替換UMShareToSina
為其他平台參數即可
分享本地gif圖片到各個開放平台,需要生成把本地gif圖片生成NSData
對象,作為各個分享方法的shareImage參數,例如快速分享接口如下寫法。
分享png、jpg圖片則只需要生成UIImage,傳入到shareImage參數,不能使用這種寫法。
//分享gif圖片
NSString *path = [[NSBundle mainBundle] pathForResource:@"picName"
ofType:@"gif"];
NSData *gifData = [NSData dataWithContentsOfFile:path];
[UMSocialSnsService presentSnsIconSheetView:self appKey:UmengAppkey shareText:shareText shareImage:gifData shareToSnsNames:nil delegate:self];
//分享png、jpg圖片
[UMSocialSnsService presentSnsIconSheetView:self appKey:UmengAppkey shareText:shareText shareImage:[UIImage imageNamed:@"picName"] shareToSnsNames:nil delegate:self];
分享音樂資源只需要將UMSocialUrlResourceType
設置為Music
類型即可
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeMusic url:@"http://mr4.douban.com/201401091529/6e0b23f37fa584f2a6e58ac70d03b31e/view/song/small/p759182.mp3"];
//調用快速分享接口
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:nil
shareToSnsNames:@[UMShareToSina]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
微信設置分享音樂方法
微信分享音樂方法直接調用原生SDK方法
WXMusicObject *musicObject = [WXMusicObject object];
musicObject.musicUrl = @"要跳轉的連接";
musicObject.musicDataUrl = @"我分享的是mp3,這裡是mp3的連接";
[UMSocialData defaultData].extConfig.wxMediaObject = musicObject;
[UMSocialData defaultData].extConfig.wxMessageType = UMSocialWXMessageTypeOther;
分享視頻資源需要將UMSocialUrlResourceType
設置為Video
類型即可
[[UMSocialData defaultData].urlResource setResourceType:UMSocialUrlResourceTypeVideo url:@"http://v.youku.com/v_show/id_XNjQ1NjczNzEy.html?f=21207816&ev=2"];
//調用快速分享接口
[UMSocialSnsService presentSnsIconSheetView:self
appKey:你的友盟應用Appkey
shareText:@"友盟社會化分享讓您快速實現分享等社會化功能,http://umeng.com/social"
shareImage:nil
shareToSnsNames:@[UMShareToSina]
delegate:self];
//實現回調方法:
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response
{
//根據`responseCode`得到發送結果,如果分享成功
if(response.responseCode == UMSResponseCodeSuccess)
{
//得到分享到的微博平台名
NSLog(@"share to sns name is %@",[[response.data allKeys] objectAtIndex:0]);
}
}
[UMSocialData defaultData].extConfig下設置各個分享平台的分享文字、分享圖片、分享視頻、音樂等。各個平台的對象名,請參看頭文件定義,此設置方法不支持直接發送分享內容的底層分享方法,只支持使用有界面的分享方法,示例代碼如下:
[UMSocialData defaultData].extConfig.sinaData.shareText = @"分享到新浪微博內容";
[UMSocialData defaultData].extConfig.tencentData.shareImage = [UIImage imageNamed:@"icon"]; //分享到騰訊微博圖片
[[UMSocialData defaultData].extConfig.wechatSessionData.urlResource setResourceType:UMSocialUrlResourceTypeImage url:@"http://www.baidu.com/img/bdlogo.gif"]; //設置微信好友分享url圖片
[[UMSocialData defaultData].extConfig.wechatTimelineData.urlResource setResourceType:UMSocialUrlResourceTypeVideo url:@"http://v.youku.com/v_show/id_XNjQ1NjczNzEy.html?f=21207816&ev=2"]; //設置微信朋友圈分享視頻
如果需要修改已有面板中的按鈕,可以參考下面的方法修改平台相應的圖片、文字和點擊事件等,例如下面修改新浪微博的圖片、文字和點擊事件
UMSocialSnsPlatform *sinaPlatform = [UMSocialSnsPlatformManager getSocialPlatformWithName:UMShareToSina];
sinaPlatform.bigImageName = @"icon";
sinaPlatform.displayName = @"微博";
sinaPlatform.snsClickHandler = ^(UIViewController *presentingController, UMSocialControllerService * socialControllerService, BOOL isPresentInController){
NSLog(@"點擊新浪微博的響應");
};
如果需要添加自定義按鈕,如復制鏈接等按鈕,在appdelegate方法內添加下面的代碼:
UMSocialSnsPlatform *snsPlatform = [[UMSocialSnsPlatform alloc] initWithPlatformName:@"CustomPlatform"];
snsPlatform.displayName = @"自定義平台";
snsPlatform.snsClickHandler = ^(UIViewController *presentingController, UMSocialControllerService * socialControllerService, BOOL isPresentInController){
NSLog(@"點擊自定義平台的響應");
};
[UMSocialConfig addSocialSnsPlatform:@[snsPlatform]];
//設置你要在分享面板中出現的平台
[UMSocialConfig setSnsPlatformNames:@[UMShareToSina,@"CustomPlatform"]];
查看log日志方法:在友盟代碼入口處添加代碼:[UMSocialData openLog:YES];
在控制台中查看相應日志