gpt4 book ai didi

iphone - 使用 Facebook 的官方 iOS 教程注销

转载 作者:行者123 更新时间:2023-12-03 21:04:03 25 4
gpt4 key购买 nike

我正在关注 Facebook 的 iOS tutorial for logging out .

我将教程的代码添加到我的委托(delegate) .m 文件中。运行它,当我单击“注销”按钮时,它崩溃了。我不知道这个错误意味着什么。日志窗口显示:

[S3DEngine_AppDelegate logoutButtonClicked]: unrecognized selector sent to instance 0xb011dd0

我正在使用 iPhone Simulator 5.0、XCode 4.2。本教程的不同之处在于我没有使用 applicationDidFinishLauchingWithOptions:。我也尝试过这个功能,但还是同样的错误。

感谢您的帮助

- (void)applicationDidFinishLaunching:(UIApplication *)application 
{
// Facebook
// Add the logout button
UIButton *logoutButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
logoutButton.frame = CGRectMake(40, 40, 200, 40);
[logoutButton setTitle:@"Log Out" forState:UIControlStateNormal];
[logoutButton addTarget:self action:@selector(logoutButtonClicked)
forControlEvents:UIControlEventTouchUpInside];
[self.viewController.view addSubview:logoutButton];


// Disable idle timer
//
[application setIdleTimerDisabled:YES] ;

// Configure and start the accelerometer
//
[[UIAccelerometer sharedAccelerometer] setUpdateInterval:kAccelerometerFrequency] ;
[[UIAccelerometer sharedAccelerometer] setDelegate:self] ;

// Create the view controller
//
[window addSubview:viewController.glView];
[window makeKeyAndVisible];

// Configure and start animation
//
viewController.glView.iAnimationInterval = kAnimationFrequency ;
[viewController.glView startAnimation];

// Configure ans start slpash view
//
CGRect frame = [[UIScreen mainScreen] bounds];
splashView = [[UIImageView alloc] initWithFrame:frame];
splashView.image = [UIImage imageNamed: @"Default.png"];
[window addSubview:splashView];
[window bringSubviewToFront:splashView];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionNone forView:window cache:YES];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(startupAnimationDone:finished:context:)];
splashView.alpha = 0.0;
[UIView commitAnimations];

// Play default movie if any
//
[viewController.glView playDefaultMovieIfAny];

facebook = [[Facebook alloc] initWithAppId:@"105441111111111" andDelegate:self];

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"]
&& [defaults objectForKey:@"FBExpirationDateKey"])
{
facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
}

if (![facebook isSessionValid])
{
[facebook authorize:nil];
}

}

- (void) logoutButtonClicked:(id)sender
{
[facebook logout];
}

- (void) fbDidLogout
{
// Remove saved authorization information if it exists
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"]) {
[defaults removeObjectForKey:@"FBAccessTokenKey"];
[defaults removeObjectForKey:@"FBExpirationDateKey"];
[defaults synchronize];
}
}

最佳答案

这样做...

[logoutButton addTarget:self action:@selector(logoutButtonClicked:)
forControlEvents:UIControlEventTouchUpInside];

或者

- (void) logoutButtonClicked
{
[facebook logout];
}

关于iphone - 使用 Facebook 的官方 iOS 教程注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9256007/

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