Ios 查询用户并将该用户添加为解析中的友谊关系时出现问题

Ios 查询用户并将该用户添加为解析中的友谊关系时出现问题,ios,parse-platform,pfquery,pfrelation,Ios,Parse Platform,Pfquery,Pfrelation,我试图在我的解析数据库中查询用户,并在当前用户和被查询用户之间创建友谊。我已经阅读了很多解析文档和教程,但仍然无法让它正常工作。我一直收到一个warnParseOperationOnMainThread错误,我尝试使用Parse推荐的调试实践来处理该错误,但它在堆栈中的一些随机代码行上中断,我不理解。如果您能告诉我出了什么问题,或者有其他实现相同功能的方法,我将非常感谢您的帮助。谢谢以下是我的查询不起作用的代码: -(无效)询问朋友 { NSString*searchedFriendName=s

我试图在我的解析数据库中查询用户,并在当前用户和被查询用户之间创建友谊。我已经阅读了很多解析文档和教程,但仍然无法让它正常工作。我一直收到一个warnParseOperationOnMainThread错误,我尝试使用Parse推荐的调试实践来处理该错误,但它在堆栈中的一些随机代码行上中断,我不理解。如果您能告诉我出了什么问题,或者有其他实现相同功能的方法,我将非常感谢您的帮助。谢谢以下是我的查询不起作用的代码:

-(无效)询问朋友 { NSString*searchedFriendName=self.addFriendTextField.text

PFQuery *friendQuery = [PFUser query];
[friendQuery whereKey:@"username" equalTo:searchedFriendName];
friendList = [friendQuery findObjects];
if(friendList.count > 0)
{
    PFUser *newFriend = friendList.lastObject;

    PFRelation *friendship = [[PFUser currentUser] objectForKey:@"friendShip"];
    [friendship addObject:newFriend];
    [[PFUser currentUser] saveInBackground];
}

}

[friendQuery findObjects]
是一种线程阻塞操作,它将阻塞主线程,直到网络查询完成。你应该使用
findObjectsInBackgroundWith…
方法(我忘了是withBlock还是withCompletion)-你提供一个objective-c块(闭包),该块将在网络查询完成后执行,但与此同时,你的应用程序将继续运行


如果您还没有读过苹果异步编程概念参考资料,那就值得一读。

谢谢!这澄清了我的错误。现在我只需要让查询正常工作,哈哈。