ios友盟分享初級總結(jié)

友盟分享文檔
http://dev.umeng.com/social/ios/quick-integration#1_3

1.1 下載并安裝SDK
安裝SDK可以采用CocoaPods和手動下載兩種方式,選擇下面其中一種來集成即可,以下只說手動集成方式
1.1.2 手動集成SDK
下載最新版的sdk:http://dev.umeng.com/social/ios/sdk-download
解壓后拖拽到項目里面
1.2 添加系統(tǒng)需要的framework
? 添加SDK后需要手動添加系統(tǒng)庫SystemConfiguration.framework

1.png

· 在other linker flags增加-ObjC 選項,并添加ImageIO 系統(tǒng)framework(實現(xiàn)新浪微博必須完成的步驟)

1.png
1.png

· 添加SDK依賴的系統(tǒng)庫文件

在Xcode中打開工程配置文件,選擇“summary”一欄。在“summary”中選擇“Linked Frameworks and Libraries”一欄,點擊“+”圖標(biāo)添加下面八個庫文件,分別是

Security.framework

libiconv.dylib

SystemConfiguration.framework

CoreGraphics.Framework

libsqlite3.dylib

CoreTelephony.framework

libstdc++.dylib

libz.dylib

1.png

1.3 設(shè)置友盟appkey

· 獲取友盟Appkey。如果你之前已經(jīng)在友盟注冊了應(yīng)用,獲得了Appkey,可以繼續(xù)使用之前獲得Appkey。

· 如果你尚未在友盟注冊賬號,需要先注冊,注冊之后登錄你的賬號,點擊添加新應(yīng)用
,完成新應(yīng)用填寫之后,將進(jìn)入應(yīng)用管理頁面。在該頁面就能得到Appkey

· 在代碼中設(shè)置你的友盟Appkey,在 AppDelegate
文件內(nèi)設(shè)置你的AppKey:

 - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

 {

    //設(shè)置友盟的APPKey

     [UMSocialDatasetAppKey:@"5770f246e0f55a863a000xxx"];

     returnYES;

     }

1.4 配置第三方平臺APPID及scheme

1.4.1 配置第三方APPID

這里只列出最常用的微信、QQ及新浪微博的配置方法,其他平臺如Facebook等請參考對應(yīng)文檔配置,申請平臺APPID請直接參考文檔申請第三方賬號

在APPdelegate.m文件中增加對應(yīng)下面的配置

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {

//    //設(shè)置友盟的APPKey

//   [UMSocialData setAppKey:@"5770f246e0f55a863a000976"];



 //設(shè)置微信的AppId,Appkey,和分享URL,需要#import"UMSocialQQHandler.h"

[UMSocialWechatHandlersetWXAppId:@"wx6f2c2f302768cfxx"appSecret:@"309d97f1e1da94fdb3427fad32fc2bxx"url:@"http://www.umeng.com/social"];

//設(shè)置手機(jī)QQ 的AppId,Appkey,和分享URL,需要#import"UMSocialQQHandler.h"

[UMSocialQQHandler setQQWithAppId:@"11055100xx"appKey:@"Y7ySWBJQU4CnKOxx"url:@"http://www.umeng.com/social"];

//打開新浪微博的SSO開關(guān),設(shè)置新浪微博回調(diào)地址,這里必須要和你在新浪微博后臺設(shè)置的回調(diào)地址一致。需要#import"UMSocialSinaSSOHandler.h"

[UMSocialSinaSSOHandleropenNewSinaSSOWithAppKey:@"29067283xx"                                             secret:@"340c14750dbe80ff125acecf953309xx"                                       RedirectURL:@"http://sns.whalecloud.com/sina2/callback"];

return YES;

}

1.4.2 配置系統(tǒng)回調(diào)

在APPdelegate.m中增加下面的系統(tǒng)回調(diào)配置,注意如果同時使用微信支付、支付寶等其他需要改寫回調(diào)代理的SDK,請在if分支下做區(qū)分,否則會影響分享、登錄的回調(diào)。

//在APPdelegate.m中增加下面的系統(tǒng)回調(diào)配置,注意如果同時使用微信支付、支付寶等其他需要改寫回調(diào)代理的SDK,請在if分支下做區(qū)分,否則會影響分享、登錄的回調(diào)

-(BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary<NSString*,id> *)options

{

BOOL rst=[UMSocialSnsServicehandleOpenURL:url];

if (rst==false)

{

    

}

return rst;

}



//添加系統(tǒng)回調(diào) 點擊返回才不會崩

- (BOOL)application:(UIApplication*)applicationopenURL:(NSURL *)url sourceApplication:(NSString *)sourceApplicationannotation:(id)annotation

{

BOOL result = [UMSocialSnsServicehandleOpenURL:url];

if (result == FALSE) {

    //調(diào)用其他SDK,例如支付寶SDK等

   }

returnresult;

}



-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity*)response

{

//根據(jù)`responseCode`得到發(fā)送結(jié)果,如果分享成功

if(response.responseCode== UMSResponseCodeSuccess)

{

    //得到分享到的微博平臺名

    NSLog(@"share to snsname is %@",[[response.data allKeys] objectAtIndex:0]);

}

}

1.4.3 配置URL scheme

1.png
2.png

1.5 設(shè)置分享文本、圖片

1.5.1 使用默認(rèn)UI風(fēng)格

適用人群:希望10分鐘集成從無到有實現(xiàn)分享的開發(fā)者

打開需要集成分享功能的視圖源碼UIViewController.m
,把如下代碼復(fù)制并粘貼到你將彈出一個分享列表的位置,例如到響應(yīng)分享按鈕的方法中。并且修改下面的友盟appkey,你要分享的文字、圖片,你要分享到的微博平臺,例如下面寫的是新浪微博、QQ、微信。

如在分享按鈕點擊方法里面寫:

首先需要  #import "UMSocial.h"   簽協(xié)議<UMSocialUIDelegate>





-(void)shareAction:(UIButton*)sender

{

//微信、微信朋友圈

[UMSocialData defaultData].extConfig.wechatTimelineData.title= 要分享的標(biāo)題;

[UMSocialData defaultData].extConfig.wechatSessionData.url= 要分享的url;



//QQ、QQ空間

[UMSocialData defaultData].extConfig.qqData.url=要分享的url;

[UMSocialData defaultData].extConfig.qzoneData.url=要分享的url;

[UMSocialSnsService presentSnsIconSheetView:self

                                     appKey:@"友盟上申請的appkey"

                                  shareText:要分享的url

                                 shareImage:[UIImageimageNamed:要分享的圖片]

                            shareToSnsNames:@[UMShareToWechatSession,UMShareToWechatTimeline,UMShareToSina,UMShareToQQ,UMShareToQzone,UMShareToTencent,UMShareToRenren,UMShareToDouban,UMShareToEmail,UMShareToSms]

                                   delegate:self];

}

這時候點擊分享按鈕就會出現(xiàn)以下界面:

1.png

iOS9.0之后在跳轉(zhuǎn)應(yīng)用進(jìn)行授權(quán)時,如果沒有增加可跳轉(zhuǎn)的白名單,就會提示“您的設(shè)備沒有安裝XXX”,進(jìn)而只進(jìn)行webview授權(quán)或授權(quán)/分享失敗,那么如何增加可跳轉(zhuǎn)表名單?

在info.plist中加入可跳轉(zhuǎn)白名單

**1****、****
**
右鍵info.plist用source code打開:

1.png

2、

增加以下內(nèi)容:插入到原本內(nèi)容的</dict>這里</dict>

<key>LSApplicationQueriesSchemes</key><array><string>wechat</string><string>weixin</string><string>sinaweibohd</string><string>sinaweibo</string><string>sinaweibosso</string><string>weibosdk</string><string>weibosdk2.5</string><string>mqqapi</string><string>mqq</string><string>mqqOpensdkSSoLogin</string><string>mqqconnect</string><string>mqqopensdkdataline</string><string>mqqopensdkgrouptribeshare</string><string>mqqopensdkfriend</string><string>mqqopensdkapi</string><string>mqqopensdkapiV2</string><string>mqqopensdkapiV3</string><string>mqzoneopensdk</string><string>wtloginmqq</string><string>wtloginmqq2</string><string>mqqwpa</string><string>mqzone</string><string>mqzonev2</string><string>mqzoneshare</string><string>wtloginqzone</string><string>mqzonewx</string><string>mqzoneopensdkapiV2</string><string>mqzoneopensdkapi19</string><string>mqzoneopensdkapi</string><string>mqqbrowser</string><string>mttbrowser</string><string>alipay</string><string>alipayshare</string><string>renrenios</string><string>renrenapi</string><string>renren</string><string>renreniphone</string><string>laiwangsso</string><string>yixin</string><string>yixinopenapi</string><string>instagram</string><string>whatsapp</string><string>line</string><string>fbapi</string><string>fb-messenger-api</string><string>fbauth2</string><string>fbshareextension</string></array>

這時候用 Propert list 方式打開info.plist,即可看到如下如新增的內(nèi)容

無標(biāo)題.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容