Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 设备上iOS错误2的Facebook SDK 3.6_Iphone_Ios_Facebook_Ios6 - Fatal编程技术网

Iphone 设备上iOS错误2的Facebook SDK 3.6

Iphone 设备上iOS错误2的Facebook SDK 3.6,iphone,ios,facebook,ios6,Iphone,Ios,Facebook,Ios6,Facebook登录在iOS模拟器上正常工作,但在iPhone 4设备上不工作。就它在模拟器上的工作而言,我认为facebookId、权限等等。。。。你准备好了吗 NSArray *permissions = [NSArray arrayWithObjects:@"email",nil]; [FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:YES completionHandler:^(FBSess

Facebook登录在iOS模拟器上正常工作,但在iPhone 4设备上不工作。就它在模拟器上的工作而言,我认为facebookId、权限等等。。。。你准备好了吗

NSArray *permissions = [NSArray arrayWithObjects:@"email",nil];

[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
    [self sessionStateChanged:session state:status error:error];
}];
有什么帮助吗? 谢谢

解决了

我检查了FacebookSDK中的SessionLoginSample,找到了一个解决方案

我必须将上述代码更改为以下代码:

MyAppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
if (!appDelegate.session.isOpen || appDelegate.session.state != FBSessionStateCreated) {
    // Create a new, logged out session.
    appDelegate.session = [[FBSession alloc] init];
}

// if the session isn't open, let's open it now and present the login UX to the user
[appDelegate.session openWithCompletionHandler:^(FBSession *session,
                                                 FBSessionState status, 
                                                 NSError *error) {
    // and here we make sure to update our UX according to the new session state
    [self sessionStateChanged:session state:status error:error];
}];
我在MyAppDelegate.h中添加了一个属性

@property (strong, nonatomic) FBSession *session;
并更改MyAppDelegate.m中的方法

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication: (NSString *)sourceApplication annotation:(id)annotation
{
//  return [FBSession.activeSession handleOpenURL:url];
return [FBAppCall handleOpenURL:url sourceApplication:sourceApplication withSession:self.session];

}

现在可以正常工作了:)

您是否禁用了沙盒模式?是的。它在模拟器上工作