使用Parse,您如何使用存储在iOS设备上的凭据登录facebook和twitter?
在我的iOS应用程序中,我有它,这样用户就可以使用Facebook或Twitter登录,而且登录很好。唯一的问题是,每次用户注销和重新登录时,如果他们尝试使用Facebook或Twitter,它会要求他们再次输入信息。现在我知道iOS设备在用户登录到他们的帐户后,会将他们的Facebook和Twitter凭据存储在手机上 那么,有没有一种方法可以让用户使用手机上存储的Twitter或Facebook凭据登录到应用程序中,而不必让用户一直输入他们的Facebook或Twitter凭据 这是我到目前为止所拥有的使用Parse,您如何使用存储在iOS设备上的凭据登录facebook和twitter?,ios,facebook,parsing,twitter,login,Ios,Facebook,Parsing,Twitter,Login,在我的iOS应用程序中,我有它,这样用户就可以使用Facebook或Twitter登录,而且登录很好。唯一的问题是,每次用户注销和重新登录时,如果他们尝试使用Facebook或Twitter,它会要求他们再次输入信息。现在我知道iOS设备在用户登录到他们的帐户后,会将他们的Facebook和Twitter凭据存储在手机上 那么,有没有一种方法可以让用户使用手机上存储的Twitter或Facebook凭据登录到应用程序中,而不必让用户一直输入他们的Facebook或Twitter凭据 这是我到目前
- (NSError *) loginWithFacebook {
NSArray *permissionsArray = @[@"user_about_me", @"user_relationships", @"user_birthday", @"user_location"];
if (![PFUser currentUser] && // Check if a user is cached
![PFFacebookUtils isLinkedWithUser:[PFUser currentUser]]) // Check if user is linked to Facebook
{
[PFFacebookUtils logInWithPermissions:permissionsArray block:^(PFUser *user, NSError *error) {
// Display some sort of loading indicator
if (!user) {
if (!error) {
NSLog(@"The user cancelled the Facebook login.");
[[DEScreenManager sharedManager] stopActivitySpinner];
}
else {
NSLog(@"An error occured: %@", error);
[[DEScreenManager sharedManager] stopActivitySpinner];
}
}
else
{
NSLog(@"User with facebook signed up and logged in");
[[[[DEScreenManager getMainNavigationController] topViewController] view] setHidden:YES];
[[DEScreenManager sharedManager] gotoNextScreen];
[[DEScreenManager sharedManager] stopActivitySpinner];
// Get the Facebook Profile Picture
[self clearUserImageDefaults];
[self getFacebookProfileInformation];
}
}];
}
return nil;
}
- (NSError *) loginWithTwitter {
[PFTwitterUtils logInWithBlock:^(PFUser *user, NSError *error) {
if (!user) {
NSLog(@"Uh oh. The user cancelled the Twitter login.");
[[DEScreenManager sharedManager] stopActivitySpinner];
return;
}
else
{
[[[[DEScreenManager getMainNavigationController] topViewController] view] setHidden:YES];
[[DEScreenManager sharedManager] gotoNextScreen];
[[DEScreenManager sharedManager] stopActivitySpinner];
[[DEScreenManager sharedManager] stopActivitySpinner];
[self getTwitterProfilePicture : [PFTwitterUtils twitter].userId];
[[PFUser currentUser] setUsername:[PFTwitterUtils twitter].screenName];
[[PFUser currentUser] saveInBackground];
[self clearUserImageDefaults];
}
}];
return nil;
}
提前感谢。您需要在设备全局设置应用程序中检查facebook/Twitter设置,如果用户已登录,则应使用这些详细信息,不应要求用户输入任何内容。如果用户没有登录,那么登录过程的工作方式取决于是否安装了本机应用程序,在这些情况下,设备不会自动连接到用户登录的帐户。因此,你不能真正做到你想要的,因为这可能不是用户真正想要的。检查设备全局设置应用程序中的facebook/Twitter设置是否有教程或其他帮助我了解如何做到这一点的内容@设备上的WainSettings应用程序有一个显示登录详细信息的Facebook部分