簡體   English   中英

獲取用戶的朋友用戶ID以獲取應用排行榜得分

[英]Get User's friends user ID for app leaderboard scores

所以,我正在創建一個排行榜,用戶可以在其中查看之前使用過該應用的全球分數,區域分數和朋友分數。 所有這些分數都會被提取並寫入firebase中的fire store數據庫,以及用戶使用facebook登錄時的唯一ID。

我需要從Facebook獲取用戶朋友及其用戶ID的列表,以便我可以使用Facebook ID在消防商店數據庫中搜索他們的分數。 但在獲取朋友列表時,我不知道如何從我的結果中獲取id:

func getFriendsFromFB() {

    let params = ["fields": "id, first_name, last_name, name, email, picture"]

    let graphRequest = FBSDKGraphRequest(graphPath: "/me/friends", parameters: params)
    let connection = FBSDKGraphRequestConnection()
    connection.add(graphRequest, completionHandler: { (connection, result, error) in
        if error == nil {
            if let userData = result as? [String:Any] {
                print(userData)
            }
        } else {
            print("Error Getting Friends \(error)");
        }

    })

    connection.start()

}

有人可以建議我如何在上面的代碼中從我的結果中獲取用戶ID?

在要求用戶登錄時,我也要求user_friends權限。

您將結果轉換為字典 ,這意味着結果存儲為鍵值。 您可以使用dictionary["keyHere"]檢索值。 我不確定FB圖形結果是如何構造的,但你必須做這樣的事情:

// Don't continue if the result is not a dictionary
guard let userData = result as? [String: Any] else {
    return
}

// Now, you can get values from the dictionary

// Let's say the userID is a String
if let userID = userData["id"] as? String {
    print(userID)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM