我已经在Facebook开发者网站上遵循了iOS教程,我已经完成了以下工作:
>创建一个Facebook应用程序以获取Facebook应用程序ID.
>我把这个应用程序ID分配给一个常量,我用它来初始化我的应用程序中的Facebook对象.
>我确定我的应用程序被标记为多任务
>我已经在下拉列表中的pList中设置了fbAPP_ID
>我已经将AppDelegate设为FBSessionDelegate,并实现了非常简单的fbDIDLogin和fbDIDNotLogin委托方法.
版本: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
这应该符合您在配置文件中提供的标识符
希望这可以帮助!
总结以上是内存溢出为你收集整理的objective-c – Native iOS Facebook SSO将不会返回到应用程序全部内容,希望文章能够帮你解决objective-c – Native iOS Facebook SSO将不会返回到应用程序所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)