启用 Parse.com 和匿名用户(带自动创建) - 这是这种情况:
- 启动应用程序 - 在数据库上创建匿名用户 #1
- 使用用户名和密码注册 - 匿名用户#1转换为普通用户
- 删除应用程序 - 重新安装和启动 - 创建匿名用户#2
- 这次不要注册而是登录 - 登录成功,但匿名用户 #2 保留在云中。
如何使步骤 2 中的匿名用户 #4 消失(完全,我不希望数据库中有垃圾)?
只要用户以其他方式注销,并且您因此知道currentUser
包含 nil 或匿名用户对象,您应该能够存储匿名用户对象,然后在成功登录后删除该用户对象,例如:
PFUser *anonymousUser;
if ([PFUser currentUser] != nil) {
anonymousUser = [PFUser currentUser];
}
[PFUser logInWithUsernameInBackground:emailString password:passwordString block:^(PFUser* user, NSError* error){
if (user) {
if (anonymousUser)
[anonymousUser deleteInBackground];
}
}