【问题标题】:How to create pointer to Parse PFUser from facebook ID如何从 facebook ID 创建指向 Parse PFUser 的指针
【发布时间】:2015-12-02 23:52:04
【问题描述】:

我正在进行 Facebook 图表调用以获取正在使用我的应用的用户的朋友。我从图形调用中获取了用户朋友的 Facebook ID。以下是我尝试使用该 ID 从 Parse 获取的内容,但我相信它并没有让所有用户回来,因为它是一个异步调用。如何保存正在使用该应用程序的用户的 fb 朋友的指针数组?提前致谢!!

 graphConnection.addRequest(requestFriends, completionHandler: { (connection: FBSDKGraphRequestConnection!, result: AnyObject!, error: NSError!) -> Void in

                     if result.objectForKey("friends") != nil {

                        // parsing dictionary to get results
                        let firstDict = result.objectForKey("friends")
                        let dataArray = firstDict!.objectForKey("data")

                        let myFriendsUsingTheAppCount = dataArray!.count
                        print("\(myFriendsUsingTheAppCount)")

                        let friendsArray:NSMutableArray = []

                        for var i = 0; i < dataArray!.count; i++ {

                           let friend = dataArray![i]

                           let friendFbObjectID = friend.objectForKey("id")!

                           let query = PFUser.query()
                           query!.whereKey("facebookID", equalTo: friendFbObjectID)

                           query!.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in

                              if error == nil {

                                 // this is where I was going to save this specific user as a pointer

                              } else {

                                 // some error
                              }
                           })
                           // this is saving just the friend's name/fb id to an array, but I want an array of pointers to the PFUser
                           friendsArray.addObject(friend)
                        }

                     } else {

                        // fb friends is nil
                        print("FB friends came back nil")
                     }
                  })

【问题讨论】:

    标签: ios swift facebook-graph-api parse-platform


    【解决方案1】:

    这可以通过使用whereKey:containedIn: 简化为单个查询

    let facebookIDs = dataArray.map { $0.objectForKey("id")! }
    let query = PFUser.query()!
    query.whereKey("facebookID", containedIn: facebookIDs)
    

    查询现在将包含所有 facebook id 在传递给查询的数组中的用户。

    (swift语法可能不正确没有仔细检查)

    【讨论】:

      猜你喜欢
      • 2015-03-03
      • 1970-01-01
      • 2023-03-12
      • 2021-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多