在没有互联网连接的情况下创建 Parse 用户

Create Parse user without internet connection

我正在使用以下代码创建用户,

[user signUpInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {

但是因为我没有兴趣连接,所以我得到一个没有互联网连接的错误,并且 [PFUser currentUser] 保持为零。

我以为使用本地数据存储 Parse 会创建用户,但我显然错了,有没有办法在没有互联网连接的情况下创建用户?

为了 [PFUser currentUser] 工作,Parse 需要打开一个会话,因此它需要有效的互联网连接或有效的 2g、3g 或 4g 数据计划。

要创建 [PFUser currentUser] 的功能,我建议使用 CoreData。

您可以创建一个实体 "User" 并将您在解析中添加的所有值添加到 CoreData 存储中。当您等待 Parse 保存当前用户并打开会话时,您可以使用数据库中的用户。

您还可以为 "User" 实体创建类别并添加 currentUser

等所有功能

如果您选择这样做,这里有一个很好的 CoreData tutorial you can also look at the Stanford University coreData class video

由于很多人一直在说这是不可能的,所以可能有一个简单的解决方法。您可以使用一些代码检查用户是否已连接到数据计划,如果没有,而不是使用将其保存到 Parse 的代码,您可以将帐户详细信息保存到变量中,一旦用户连接到 Parse,它就可以上传Parse 中 _User class 的那些变量。

希望对您有所帮助。 ~阿尔曼

是的,而且真的很简单。您可以在初始化 Parse 时启用自动用户。这样,[PFUser currentUser] 就不会为零。

[PFUser enableAutomaticUser];

在用户执行保存方法之前,用户对象甚至不会尝试保存到 Parse。

稍后,您可以通过调用来检测您是否有登录用户或匿名用户:

[PFAnonymousUtils isLinkedWithUser:[PFUser currentUser]]