objective-c – Native iOS Facebook SSO将不会返回到应用程序
好的,这似乎是一个重复的,但我已经解决了所有的问题,围绕这个问题,我仍然似乎无法让这个工作为我的应用程序.
我已经在Facebook开发者网站上遵循了iOS教程,我已经完成了以下工作: >创建一个Facebook应用程序以获取Facebook应用程序ID. 版本:XCode 4.3.2在Lion,iOS 5.1,Facebook iOS 4.1.1 所有这一切,我仍然似乎无法让Facebook将控制权返回给我的应用程序,当它授权.它只是留在Facebook而不是. 代码:(注意:FB_APP_ID更改为基本号码以便查看) AppDelegate.h: #import <UIKit/UIKit.h> #import "FBConnect.h" #define FB_APP_ID @"1234567890" @interface AppDelegate : UIResponder <UIApplicationDelegate,FBSessionDelegate> @property (strong,nonatomic) UIWindow *window; @property (nonatomic,strong) Facebook* facebook; @end AppDelegate.m: #import "AppDelegate.h" @implementation AppDelegate @synthesize window = _window; @synthesize facebook = _facebook; - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { _facebook = [[Facebook alloc] initWithAppId:FB_APP_ID andDelegate:self]; if (![_facebook isSessionValid]) { [_facebook authorize:nil]; } } - (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL *)url { return [_facebook handleOpenURL:url]; } - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { return [_facebook handleOpenURL:url]; } - (void)fbDidLogin { NSLog(@"App logged in"); } - (void)fbDidNotLogin:(BOOL)cancelled { NSLog(@"App did not login"); } @end 相关信息: Facebook应用程序屏幕(主要是粉红色): 注意:我仅使用基本设置,并尝试使用iOS本机应用设置,其中包含假iTunes商店ID,但配置配置文件中的相同包ID. 无论我做什么,总是加载Facebook,并要求授权我的应用程序,然后只需关闭验证屏幕窗口,并坐在我的Facebook屏幕上,而不是返回到我的应用程序. 还要注意:我知道它会一直问,因为我没有检查auth令牌和到期日期…..这是下一步….现在我想至少让它返回到我的应用程序之前我担心这个 我错过了这里的东西吗?还有什么我可以尝试让Facebook回到我的应用程序? 编辑:当调试的时候,似乎找不到任何一个openURL被调用的地方. 编辑#2:在模拟器上运行它时,它通过Safari加载FB对话框(如预期),然后当我授权时,safari会抛出一个错误,就像他们试图用来回到我的应用程序的URL无效: 这还没有告诉我很多,因为我的fb1234567890是设置正确的,我知道在Info.plist. 解决方法
您的info.plist似乎格式不正确
确保url方案嵌套在名为“URL方案”的项目(一个要精确的数组)下 该数组应包含可以启动应用程序的所有可能的URL方案 有关URL方案的更多说明,请参阅附件 url scheme http://f.cl.ly/items/243G1D0H39151q472V1t/Screen%20Shot%202012-05-16%20at%206.52.06%20PM.png 此外,“URL标识符”应该是您的包标识符:ex. com.mycompany.myapp 希望这可以帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |