我正在開發iOS應用程序,我希望能夠發送邀請通過Facebook我的應用程序,這是我設法用 做presentRequestsDialogModallyWithSession的Facebook的iOS presentRequestsDialogModallyWithSession返回選定的好友
但我也希望我的應用程序知道邀請函是發給誰的。這可能嗎?
我正在開發iOS應用程序,我希望能夠發送邀請通過Facebook我的應用程序,這是我設法用 做presentRequestsDialogModallyWithSession的Facebook的iOS presentRequestsDialogModallyWithSession返回選定的好友
但我也希望我的應用程序知道邀請函是發給誰的。這可能嗎?
是的,這是絕對可能的。 以下是獲取用戶向其發送邀請的用戶朋友列表的方式。
在presentRequestsDialogModallyWithSession必須有一個處理一些事情是這樣的:
handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {
你可以在resultURL可變響應URL的結果。如果您使用此方法
[resultURL parameterString]
將其轉換爲字符串,你會得到fbconnect URL,這是這樣的:fbconnect://成功請求= 57985658213xxxx &到%5B0%5D = 13xxxxxxx9 &到%5B1 %5D = 1000000xxxxxxx3
這裏,請求後第一參數=是 「57985658213xxxx &到」,這是請求ID,並且通過分離剩餘的參數 「&到%5B0%5D =」 和 「&到%5B1%5D =」是朋友的臉書ID。在這裏我已經邀請了兩個人,這裏是他們:13xxxxxxx9,1000000xxxxxxx3
而不是所有的數字,我把XXXXXXX放在上面的id,因爲我不想在這裏公開顯示我的朋友的facebook的ID計算器;)
爲了增加regeint的回答,返回的URL轉換爲使用字符串
NSString* fbResponse = [resultURL absoluteString];
我通過我發送到presentRequestsDialogModallyWithSession(按順序的Facebook好友列表迭代)之後創建的遵循正則表達式進行提取從URL字符串朋友的Facebook ID返回:
(?:to%5B0%5D\=)(\d+)
其中是我想要的項目的索引,在這個例子中,第一個。
注意:雖然這可行,但我發現整個解決方案非常脆弱。它對來自presentRequestsDialogModallyWithSession的響應不敏感。更好的解決方案可能是放棄Objective-C類,並通過HTTP請求進行圖形調用,該請求有望返回JSON,而不像JavaScript中那樣 - 更健壯。
hey User3370459!你能找到解決方案嗎? – regeint