我正在尝试使用FBUserSettingsViewController
,但每次尝试解除它时它都会崩溃。我使用以下代码来显示它:
PS:它只会在ios 6上崩溃并出现此错误:
// [FBUserSettingsViewController dealloc];
FBUserSettingsViewController *a =[[FBUserSettingsViewController alloc] init];
[a setDefaultAudience:FBSessionDefaultAudienceEveryone];
[a setDelegate:self];
[a setPublishPermissions: [NSArray arrayWithObject:@"publish_actions"]];
[nav presentViewController:a animated:NO completion:nil];
这是为了解雇它:
- (void)facebookViewControllerDoneWasPressed:(id)sender{
_facebook = [[Facebook alloc]
initWithAppId:@"176237615850674"
andDelegate:self];
// Store the Facebook session information
_facebook.accessToken = FBSession.activeSession.accessToken;
_facebook.expirationDate = FBSession.activeSession.expirationDate;
if ([nav respondsToSelector:@selector(dismissViewControllerAnimated:completion:)])
[nav dismissViewControllerAnimated:YES completion:nil];
else [nav dismissModalViewControllerAnimated:YES];
}
关于这个话题还有另一个问题,但那里没有任何答案
答案 0 :(得分:0)
Facebook iOS SDK中存在错误。如果你看一下FBUserSettingsViewController源代码中的dealloc方法,你会发现它们在释放ivars之前调用[super dealloc]。在FBViewController的dealloc中出现相同的错误。
我修复了这两个错误并将我的更改推送到了GitHub上的facebook-ios-sdk的一个分支。看看:https://github.com/Tafkadasoh/facebook-ios-sdk
要解决您的问题,只需克隆此fork并从命令行调用“scripts / build_framework.sh”即可。之后,您将在“build / FacebookSDK.framework”文件夹中找到该框架的固定版本。修复了我的崩溃。