網頁

2012年7月5日 星期四

IOS 使用 facebook SDK 教程(二)『Adding Social Context』


相關文章更新:2012/12/21

【facebook SDK 3.1】what is NEW?

【facebook SDK 3.1】教程1-設定

【facebook SDK 3.1】教程2-登入,認證,登出



==請改用sdk 3.1==


【環境:xCode4.3.2 , ios5.1 , USE ARC】
說明:
說明:此教程主要為facebook 2012 08後,官方提供的主要流程。
此教程為文件中的『Adding Social Context』,理解後的教學執行方式。
在這篇文章中,可以學到如何取得用戶社交圈的各類資訊,和如何使用『分享』、『邀請』等facebook常見功能。
建議將IOS 使用 facebook 教程『Getting Started』理解後,再來觀看文章。
官方網站教程:http://developers.facebook.com/docs/mobile/ios/build/#graph

Step 6: Using the Graph API


Facebook Graph API 提供一種簡單的、一致性的Facebook social graph使用方法,此種方法可以取得用戶的社交圈的各類資訊(e.g., people, photos, events, and fan pages) and the connections between them (e.g., friend relationships, shared content, and photo tags)

你可以透過此種方法(Graph API )去請求相關你想要的訊息,例如:用戶資訊
 
// get information about the currently logged in user
[facebook requestWithGraphPath:@"me" andDelegate:self];

// get the posts made by the "platform" page
[facebook requestWithGraphPath:@"platform/posts" andDelegate:self];

// get the logged-in user's friends
[facebook requestWithGraphPath:@"me/friends" andDelegate:self];

請將你的程式碼加入FBRequestDelegate的協議(protocol),這樣才可以去處理你所請求的回應(your request responses)。
注意:server適用json去傳遞回應你的請求,facebook SDK中已經有這個JSON library。
所以若你的程式碼中,必須包含request:didFailWithError:避免解析錯誤的狀況發生。

『回應請求』若成功,程式就會呼叫request:didLoad:,『回應』傳遞的delegate可能為NSArray、NSDictionary。

ps:基本上你加入一個按鈕,然後請求其中一個回應,並加入FBRequestDelegate的協議,並加入下列code:
 
- (void)request:(FBRequest *)request didReceiveResponse:(NSURLResponse *)response {
    NSLog(@"received response");
}
就可以看到你的回應已經成功。



你的app也可以根據自己的需求,去解析自己善用的方式。


Step 7: Integrating with Social Channels


Social Channels能使用戶去po文到他們朋友的牆上或者寄送邀請給他人,facebook SDK提供方法經由Facebook Platform dialogs去整合social channels ,目前支援的dialogs有以下:
  • Feed Dialog - the dialog used for publishing posts to a user's News Feed.(分享)
  • Requests Dialog - the dialog used to send a request to one or more friends.(寄送邀請)
這允許你的app去提供基本的facebook功能,不需要去建立native dialogs, make API calls, or handle responses.詳細請參閱mobile distribution guide
要使用此功能,請在你的class中加入『FBDialogDelegate』的協議(protocol),這樣才可以使用dialog的功能。

Requests

Requests』是最好的方法使用戶邀請他們的朋友去使用你的app,你的app可以使用『Request dialog』讓用戶邀請朋友去使用你的app。
若用戶的裝置支援此功能,每當朋友發送請求,除了他們一般在Facebook中的通知,他們將獲得Facebook的本機應用程序推送通知。
 
    NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"Come check out my app.",  @"message",
                               nil];

    [facebook dialog:@"apprequests"
                  andParams:params
                andDelegate:self]; 

News Feed

這就是大家所熟悉的『分享』功能。
使用方法如下:
 
[facebook dialog:@"feed" andDelegate:self];

Timeline and Open Graph

這個部分有興趣就到官網看吧,這邊不多做介紹。





As always , if you have any question , feel free to contact me.
有任何問題,請聯絡我

歡迎轉載,請註明出處,感謝。

沒有留言:

張貼留言