gpt4 book ai didi

iphone - 如何检查 Facebook 是否已登录设备? objective-c

转载 作者:行者123 更新时间:2023-11-28 20:20:58 25 4
gpt4 key购买 nike

我正在将 Facebook SDK 实现到我的应用程序中。我正在使用 FBLoginView 登录 Facebook。我有一个 UIButton,我用它在用户的 Facebook 墙上分享。现在我不想使用 FBLoginView 登录,我想检查是否有 Facebook 应用程序,以及用户是否已登录。

- (IBAction)pickFriendsList:(UIButton *)sender
{
FBFriendPickerViewController *friendPickerController = [[FBFriendPickerViewController alloc] init];
friendPickerController.title = @"Pick Friends";
[friendPickerController loadData];

// Use the modal wrapper method to display the picker.
[friendPickerController presentModallyFromViewController:self animated:YES handler:
^(FBViewController *sender, BOOL donePressed) {

if (!donePressed) {
return;
}
NSString* fid;
NSString* fbUserName;

for (id<FBGraphUser> user in friendPickerController.selection)
{
NSLog(@"\nuser=%@\n", user);
fid = user.id;

fbUserName = user.name;

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"test", @"message", @"http://webecoist.momtastic.com/wp-content/uploads/2009/01/nature-wonders.jpg", @"picture", @"Sample App", @"name",fid,@"tags",fid,@"to",@"106377336067638",@"place", nil];


[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"%@/feed",fid] parameters:params HTTPMethod:@"POST" completionHandler:^(FBRequestConnection *connection,id result,NSError *error)
{

[FBWebDialogs presentFeedDialogModallyWithSession:nil parameters:params handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error)

{
if (error)
{
// Error launching the dialog or publishing a story.

NSLog(@"Error publishing story.");
}
else
{
if (result == FBWebDialogResultDialogNotCompleted) {
// User clicked the "x" icon
NSLog(@"User canceled story publishing.");
}
else
{

// Handle the publish feed callback

//Tell the user that it worked.

}


}
}];
}];

}

}];

}

最佳答案

我假设您使用的是 iOS 6 SDK。在这种情况下,使用下面的代码(适用于设备):

if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) 
{

//user is already logged in using iOS integrated FB a/c

}
else
{

//user is not logged in

}

注意:FBSession 无法检查此条件。因此使用 FBSession 进行 session 检查与上述代码具有不同的含义。

问候,

关于iphone - 如何检查 Facebook 是否已登录设备? objective-c ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16044543/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com