Objective c 如何使用最新的facebook SDK从iOS向facebook发布内容?

Objective c 如何使用最新的facebook SDK从iOS向facebook发布内容?,objective-c,ios,facebook,cocoa-touch,post,Objective C,Ios,Facebook,Cocoa Touch,Post,我试图在我的iOS应用程序中发布一个简单的facebook url。我所做的是: facebook = [[Facebook alloc] initWithAppId:FB_APP_ID andDelegate:delegate]; 然后在某个时候 [facebook authorize:permissions]; 此时,我的应用程序退出,它让我进入safari和权限页面,而不是向我显示一个登录对话框(在我的应用程序中),在那里我登录,然后点击post或某个刚刚贴到墙上的帖子 我很确定这是一

我试图在我的iOS应用程序中发布一个简单的facebook url。我所做的是:

facebook = [[Facebook alloc] initWithAppId:FB_APP_ID andDelegate:delegate];
然后在某个时候

[facebook authorize:permissions];
此时,我的应用程序退出,它让我进入safari和权限页面,而不是向我显示一个登录对话框(在我的应用程序中),在那里我登录,然后点击post或某个刚刚贴到墙上的帖子

我很确定这是一个简单的问题,但由于这是我第一次进行facebook集成,因此配置它对我来说是一件痛苦的事情,而文档对我帮助不大


感谢您的帮助!谢谢

如果您确实需要删除对Safari或Facebook应用程序的重定向,您应该打开FBConnect Facebook.h类并找到以下方法:

- (void)authorizeWithFBAppAuth:(BOOL)tryFBAppAuth
                    safariAuth:(BOOL)trySafariAuth {
在这里,你需要声明你不想被重定向到任何地方,要做到这一点,请将这两个bool设置为NO

    - (void)authorizeWithFBAppAuth:(BOOL)tryFBAppAuth
                        safariAuth:(BOOL)trySafariAuth {
tryFBAppAuth = NO;
trySafariAuth = NO;
接下来,要将内容发布到墙上,您有两个选项。一个坏掉了——标准的facebook对话框窗口,一旦你在应用程序的任何地方显示任何
UIAlertView
,它会将键盘置于实际的网络视图后面,因此不要使用它。相反,您可以使用自己的自定义界面,使用一个简单的
UITextView
区域和一键式插座按钮。以下是从自定义视图张贴到墙上所需的方法:

- (void)facebookPostToWallWithMessage:(NSString *)message {
  sharedInstance.facebookDelegate = delegate;
  NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                 message, @"message", // The status message
                                 nil];

  pushMessageRequest = [facebook requestWithGraphPath:@"me/feed"
                                            andParams:params
                                        andHttpMethod:@"POST"
                                          andDelegate:self];
}
以下是通知用户他们已发布更新或更新失败所需的委派方法:

- (void)request:(FBRequest *)request didLoad:(id)result {
  if (request == pushMessageRequest) {
    NSLog(@"message has been posted, inform delegate");
  }
}

- (void)request:(FBRequest *)request didFailWithError:(NSError *)error {
  if (request == pushMessageRequest) {
//failed to post message, inform delegate
    //[facebookDelegate facebookFailedToPostToWallWithMessage:error.localizedDescription];
  }
}

您知道如何使用新的facebook ios sdk更新停止重定向吗?从外观上看,他们删除了这些功能?我真的很棒!我真的不知道怎么做,但是这些重定向在所有的应用程序中都很常见,所以你应该为它们操心太多了。最好是顺其自然