我的应用程序目前在没有任何Parse Facebook登录的情况下发布。我现在正在努力添加它。
目前,我的用户通过注册用户名和密码获得了Parse帐户。
我将在应用程序中添加一个按钮,允许该用户使用以下方式将其帐户链接到Facebook:
if !PFFacebookUtils.isLinkedWithUser(user) {
PFFacebookUtils.linkUserInBackground(user, withReadPermissions: nil, block: {
(succeeded: Bool?, error: NSError?) -> Void in
if (succeeded != nil) {
QL1("Woohoo, the user is linked with Facebook!")
} else {
QL4("Booo, the user is not linked with Facebook!")
}
})
}
问题如下:
如果用户决定注销,然后点击Facebook登录按钮,那么Parse库将为该用户创建一个全新的用户帐户,他将“丢失”他以前的帐户。 我试图找到一种方式,当他通过Facebook登录时,首先我在User表中搜索给定的用户名。如果我找不到它,那么它就是一个全新的用户并且一切都很好。但如果我能找到一条记录,那么:
1-我必须删除在Facebook登录过程中创建的用户 2-我必须退出 3-我必须使用找到的用户登录并将他的帐户链接到Facebook(它可能会触发第二个Facebook权限屏幕,这也是一件坏事......)
步骤1和2我可以做...问题是以编程方式登录某人,因为当您执行PFUser.query()
时密码字段为空
有人可以建议任何替代方案吗?
我想到的另一件事是:如果用户使用Facebook登录并且已经拥有一个帐户,我会将其注销并弹出并提醒他告诉他使用他的密码登录,然后从应用程序中链接应用程序... 这肯定会奏效,但用户体验并不是那么棒。
由于