注销facebook sdk 3.08

注销facebook sdk 3.08,facebook,logout,Facebook,Logout,我有一个问题,我的facebook应用程序是一个简单的应用程序断开连接,上传照片到facebook。 登录会让您注销safari,但不会完全注销,下一次登录是在我的帐户上。我在php中看到了几个选项,但都不起作用。附加代码 - (void)viewDidLoad { [buttonPost setHidden:NO]; FBLoginView *loginview = [[FBLoginView alloc] initWithPermissions:[NSArray array

我有一个问题,我的facebook应用程序是一个简单的应用程序断开连接,上传照片到facebook。 登录会让您注销safari,但不会完全注销,下一次登录是在我的帐户上。我在php中看到了几个选项,但都不起作用。附加代码

- (void)viewDidLoad
{
[buttonPost setHidden:NO];

        FBLoginView *loginview = [[FBLoginView alloc] initWithPermissions:[NSArray arrayWithObject:@"publish_actions"]];

        loginview.frame = CGRectOffset(loginview.frame, 5, 5);
        loginview.delegate = self;

        [self.view addSubview:loginview];

        [loginview sizeToFit];
}

- (IBAction)Post:(UIButton *)sender{
    [FBRequestConnection startForUploadPhoto:self.imageScreen completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
        {
            [self showAlert:@"Photo Post" result:result error:error];
        }];
}

- (void)loginViewShowingLoggedOutUser:(FBLoginView *)loginView {
    [self.buttonPost setHidden:YES];

    self.labelFirstName.text = nil;


}
- (void)loginViewShowingLoggedInUser:(FBLoginView *)loginView {
    // first get the buttons set for login mode
   [self.buttonPost setHidden:NO];

}
- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user {
    // here we use helper properties of FBGraphUser to dot-through to first_name and
    // id properties of the json response from the server; alternatively we could use
    // NSDictionary methods such as objectForKey to get values from the my json object
    self.labelFirstName.text = [NSString stringWithFormat:@"Hello %@!", user.first_name];
    // setting the profileID property of the FBProfilePictureView instance
    // causes the control to fetch and display the profile picture for the user
    self.loggedInUser = user;
}

- (void)showAlert:(NSString *)message
           result:(id)result
            error:(NSError *)error {

    NSString *alertMsg;
    NSString *alertTitle;
    if (error) {
        alertMsg = error.localizedDescription;
        alertTitle = @"Error";
    } else {
        NSDictionary *resultDict = (NSDictionary *)result;
        alertMsg = [NSString stringWithFormat:@"Successfully posted",
                    message, [resultDict valueForKey:@"id"]];
        alertTitle = @"Success";
    }

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:alertTitle
                                                        message:alertMsg
                                                       delegate:nil
                                              cancelButtonTitle:@"OK"
                                              otherButtonTitles:nil];
    [alertView show];
}
-(void)viewDidLoad
{
[按钮栏设置隐藏:否];
FBLoginView*loginview=[[FBLoginView alloc]initWithPermissions:[NSArray arrayWithObject:@“发布操作”];
loginview.frame=CGRectOffset(loginview.frame,5,5);
loginview.delegate=self;
[self.view addSubview:loginview];
[loginview sizeToFit];
}
-(iAction)Post:(UIButton*)发送者{
[FBRequestConnection startForUploadPhoto:self.imageScreen completionHandler:^(FBRequestConnection*连接,id结果,NSError*错误)
{
[自显示警报:@“照片张贴”结果:结果错误:错误];
}];
}
-(无效)loginView显示LoggeDoutUser:(FBLoginView*)loginView{
[self.buttonPostSetHidden:是];
self.labelFirstName.text=nil;
}
-(无效)loginView显示日志用户:(FBLoginView*)loginView{
//首先设置登录模式的按钮
[self.buttonPost设置隐藏:否];
}
-(void)loginView蚀刻教育信息:(FBLoginView*)loginView用户:(id)用户{
//在这里,我们使用FBGraphUser的助手属性点到first_name和
//来自服务器的json响应的id属性;或者我们可以使用
//NSDictionary方法,如objectForKey,用于从MyJSON对象获取值
self.labelFirstName.text=[NSString stringWithFormat:@“Hello%@!”,user.first_name];
//设置FBProfilePictureView实例的profileID属性
//使控件获取并显示用户的配置文件图片
self.loggedInUser=用户;
}
-(无效)showAlert:(NSString*)消息
结果:(id)结果
错误:(n错误*)错误{
NSString*alertMsg;
NSString*警报标题;
如果(错误){
alertMsg=error.localizedDescription;
alertTitle=@“错误”;
}否则{
NSDictionary*ResultDisct=(NSDictionary*)结果;
alertMsg=[NSString stringWithFormat:@“已成功发布”,
消息,[ResultDisct valueForKey:@“id”];
alertTitle=@“成功”;
}
UIAlertView*alertView=[[UIAlertView alloc]initWithTitle:alertTitle
信息:alertMsg
代表:无
取消按钮:@“确定”
其他按钮:无];
[警报视图显示];
}

此问题与Safari的Cookie和缓存机制有关

不幸的是,我知道让Safari忘记以前登录凭据的唯一方法是清除设备设置中的cookie和数据

我还没有真正尝试过,但我很确定,当您使用FBSession而不是FBLoginView时,也会发生这种情况。

此问题与Safari的Cookie和缓存机制有关

不幸的是,我知道让Safari忘记以前登录凭据的唯一方法是清除设备设置中的cookie和数据

我还没有真正尝试过,但我很确定,当您使用FBSession而不是FBLoginView时,也会发生这种情况。