市场分享竞品分析
個(gè)人感覺(jué)目前做分享的SDK,最受歡迎的就是ShareSDK和友盟的,下面我們來(lái)對(duì)比下這2個(gè)SDK在集成過(guò)程中的一些區(qū)別:
對(duì)比ShareSDK和友盟
一.SDK大小
對(duì)比環(huán)境說(shuō)明:
1.只集成社交平臺(tái) 新浪微博,微信,QQ
2.均不包含各自的UI庫(kù),使用最簡(jiǎn)單最基礎(chǔ)的接口實(shí)現(xiàn)分享
3.均在一個(gè)新建的干凈的Xcode項(xiàng)目中進(jìn)行集成
對(duì)比數(shù)據(jù)說(shuō)明
1.均使用LinkMap對(duì)項(xiàng)目進(jìn)行統(tǒng)計(jì),統(tǒng)計(jì)的是項(xiàng)目打包后所占的大小
2.表格中均統(tǒng)計(jì)各自必須要的庫(kù)大小(如果需要第三方庫(kù),則也應(yīng)計(jì)算在內(nèi);不包含系統(tǒng)庫(kù))
以下為統(tǒng)計(jì)友盟UM Share 的arm64結(jié)果的截圖:
二.集成復(fù)雜度
1)注冊(cè),登錄,創(chuàng)建應(yīng)用獲取key,基本沒(méi)差別;
2)添加SDK,以及依賴庫(kù);
i.可以使用cocoapods集成,無(wú)需添加依賴庫(kù)等配置
ii.手動(dòng)集成SDK
2種方式基本沒(méi)有差別;
3)代碼配置
(1)設(shè)置AppKey,配置第三方平臺(tái);
友盟:
ShareSDK
j[ShareSDK registerActivePlatforms:@[@(SSDKPlatformTypeSinaWeibo),@(SSDKPlatformTypeWechat),@(SSDKPlatformTypeQQ)]onImport:^(SSDKPlatformType platformType){switch (platformType){case SSDKPlatformTypeWechat:[ShareSDKConnector connectWeChat:[WXApi class]];break;case SSDKPlatformTypeQQ:[ShareSDKConnector connectQQ:[QQApiInterface class] tencentOAuthClass:[TencentOAuth class]];break;case SSDKPlatformTypeSinaWeibo:[ShareSDKConnector connectWeibo:[WeiboSDK class]];break;default:break;}}onConfiguration:^(SSDKPlatformType platformType, NSMutableDictionary *appInfo){switch (platformType){case SSDKPlatformTypeSinaWeibo://設(shè)置新浪微博應(yīng)用信息,其中authType設(shè)置為使用SSO+Web形式授權(quán)[appInfo SSDKSetupSinaWeiboByAppKey:@"568898243"appSecret:@"38a4f8204cc784f81f9f0daaf31e02e3"redirectUri:@"http://www.sharesdk.cn"authType:SSDKAuthTypeBoth];break;case SSDKPlatformTypeWechat:[appInfo SSDKSetupWeChatByAppId:@"wx4868b35061f87885"appSecret:@"64020361b8ec4c99936c0e3999a9f249"];break;case SSDKPlatformTypeQQ:[appInfo SSDKSetupQQByAppId:@"100371282"appKey:@"aed9b0303e3ed1e27bae87c33761161d"authType:SSDKAuthTypeBoth];break; default:break;}}]``` 其次,友盟還需要在Appdelegate.m里增加這些回調(diào)處理的方法:// 支持所有iOS系統(tǒng)
-
(BOOL)application:(UIApplication )application openURL:(NSURL )url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
//6.3的新的API調(diào)用,是為了兼容國(guó)外平臺(tái)(例如:新版facebookSDK,VK等)的調(diào)用[如果用6.2的api調(diào)用會(huì)沒(méi)有回調(diào)],對(duì)國(guó)內(nèi)平臺(tái)沒(méi)有影響
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url sourceApplication:sourceApplication annotation:annotation];if (!result) {
// 其他如支付等SDK的回調(diào)}
return result;
} -
(BOOL)application:(UIApplication )app openURL:(NSURL )url options:(NSDictionary *)options
// 其他如支付等SDK的回調(diào)
{
//6.3的新的API調(diào)用,是為了兼容國(guó)外平臺(tái)(例如:新版facebookSDK,VK等)的調(diào)用[如果用6.2的api調(diào)用會(huì)沒(méi)有回調(diào)],對(duì)國(guó)內(nèi)平臺(tái)沒(méi)有影響
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url options:options];
if (!result) {}
return result;
}//支持目前所有iOS系統(tǒng) -
(BOOL)application:(UIApplication )application handleOpenURL:(NSURL )url
// 其他如支付等SDK的回調(diào)
{
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
if (!result) {}
return result;
}`
但是ShareSDK并不需要加這些方法。
(2)實(shí)現(xiàn)分享
友盟:
//1、創(chuàng)建分享參數(shù)
NSMutableDictionary *shareParams = [NSMutableDictionary dictionary]; [shareParams SSDKSetupShareParamsByText:@"分享內(nèi)容"images:[[NSBundle mainBundle] pathForResource:@"COD13" ofType:@"jpg"]url:[NSURL URLWithString:@"http://mob.com"]title:@"分享標(biāo)題"type:SSDKContentTypeAuto];//2、分享(可以彈出我們的分享菜單和編輯界面) [ShareSDK showShareActionSheet:nil //要顯示菜單的視圖, iPad版中此參數(shù)作為彈出菜單的參照視圖,只有傳這個(gè)才可以彈出我們的分享菜單,可以傳分享的按鈕對(duì)象或者自己創(chuàng)建小的view 對(duì)象,iPhone可以傳nil不會(huì)影響items:nilshareParams:shareParamsonShareStateChanged:^(SSDKResponseState state, SSDKPlatformType platformType, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error, BOOL end) {switch (state) {case SSDKResponseStateSuccess:{NSLog(@"分享成功");break;}case SSDKResponseStateFail:{NSLog(@"分享失敗~~%@",error.description);break;}default:break;}}];```總結(jié):
ShareSDK:方法多為block設(shè)置結(jié)構(gòu),代碼多但易于檢查,層次清晰;
友盟:方法設(shè)置比較分散,平臺(tái)多時(shí)不易查找問(wèn)題,不過(guò)靈活多選;
個(gè)人感覺(jué)ShareSDK比友盟更好用,這不僅體現(xiàn)在代碼設(shè)計(jì)結(jié)構(gòu)上,另外ShareSDK也有更專業(yè)的技術(shù)服務(wù)!
4)設(shè)置URL Scheme以及白名單
如何設(shè)置QQ的URL Scheme?
友盟:
ShareSDK:
結(jié)論:這里可以看出ShareSDK開(kāi)發(fā)文檔更加詳細(xì),容易理解。
其他對(duì)比
以上就是個(gè)人的見(jiàn)解啊,親們覺(jué)得哪個(gè)更方便呢,歡迎發(fā)表意見(jiàn)哦!
總結(jié)
- 上一篇: centos部署openstack--网
- 下一篇: linux下查看监听port相应的进程