Facebook iOS SDK未返回到我的应用程序

Facebook iOS SDK未返回到我的应用程序,ios,xcode,facebook,Ios,Xcode,Facebook,我正在尝试在我的应用程序中实现新的oAuth2 facebook SDK,但我一辈子都不明白一旦登录/验证,我应该如何回到我的应用程序 我的目标是在用户墙上发布一条消息 我当前正在使用以下命令启动登录过程: -(void)tryFBlogin { NSString *appId = @"113142482******"; NSArray *permissions = [[NSArray arrayWithObjects:@"publish_stream",nil] retain]; Th

我正在尝试在我的应用程序中实现新的oAuth2 facebook SDK,但我一辈子都不明白一旦登录/验证,我应该如何回到我的应用程序

我的目标是在用户墙上发布一条消息

我当前正在使用以下命令启动登录过程:

-(void)tryFBlogin {

NSString *appId = @"113142482******";

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

TheAppDelegate *theAppDelegate = (TheAppDelegate *)[[UIApplication sharedApplication]delegate];

//Asking for permission
theAppDelegate = (TheAppDelegate *)[[UIApplication sharedApplication] delegate];
theAppDelegate.facebook = [[Facebook alloc] initWithAppId:appId andDelegate:self];
Facebook *fb = [theAppDelegate facebook];
[fb  authorize:permissions];

}
正在打开safari浏览器。如果我已经登录并获得应用程序授权,则会有一条消息告诉我是这样的,并且我有一个OK按钮可按

当我按下OK(确定)按钮时,我收到一条警告,说safari无法打开页面。我确认了警报,然后看着一个空白的safari窗口

如果我从facebook注销,我会看到我填写的登录屏幕,然后会看到与上面相同的屏幕

我知道我还没有在任何地方实现publish命令,因为我不知道应该在哪里/什么时候实现它

我确实有这个委托方法,但似乎从未调用过

- (void)fbDidLogin {

    NSLog(@"fbDidLogin");
}
这是我正在等待放置的代码:

NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
kAppId, @"113142482******",
facebookUrl, @"link",
@"http://www.domain.com", @"picture",
@"My Message", @"name",
@"Caption text!", @"caption",
@"Message text.",  @"message",
nil];

[facebook dialog:@"feed" andParams:params andDelegate:self];
我的应用程序主AppDelegate中还有以下方法:

-(BOOL) application:(UIApplication *)application handleOpenURL:(NSURL *)url{
    [facebook handleOpenURL:url]; 
return YES; 
}
如有任何帮助/建议,将不胜感激

谢谢


标记

您必须将AppID写入.plist

我也遇到了同样的问题。为了澄清其他一些答案,以下是我如何在Xcode 4.2中修复iPhone应用程序的问题:

.plist file
    "URL types"
    "Item 0"
        "URL Schemes"
        "Item 0"
            "fb21593853845xxxx"

Arg,最好打开.plist作为源代码,您应该看到:

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>fb38*******</string>
        </array>
    </dict>
</array>
CbundleUrlTypes
循环流化床锅炉方案
fb38*******

您是否在plist(CbundleUrlTypes)中注册了应用程序以打开facebook sdk的回调?不确定这是我的愚蠢还是不清楚的说明,但我的问题是在需要fb113142482*******时定义fb[113142482*****]。没有方括号。你能详细说明一下吗?“FB215938538845xxx”的值是多少?当然!这是“App ID/API Key”字段的值(在developers.facebook.com/apps页面的“设置”下),根据facebook iOS SDK文档添加了一个“fb”前缀。我发誓,本教程本可以强调“fb”字母的要求。上面只写着你的应用程序ID,我以为只是号码。我从没想过我会需要数字前面的“fb”。@GregKrsak嘿,有人能帮我解决这个问题吗?上面的答案对我很有用,我还缺什么吗??我尝试了几个小时来修复我的URL方案,但我不知道还能做什么。…。@derek.lo没问题。检查我的个人资料,随时给我发电子邮件!