开始使用FacebookSDK.framework

时间:2014-01-28 10:38:15

标签: ios facebook ios7

我在使用FacebookSDK.framework时遇到了麻烦。

我的iOS应用需要在FB上发布一些简单的消息。

如果用户以设备设置级别登录,则使用以下方式一切正常:

SLComposeViewController *facebkController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

......等等。

如果不是这种情况,我会尝试依赖于FacebookSDK.framework,但我遇到了问题。

我按照此处描述的步骤操作:https://developers.facebook.com/docs/ios/getting-started/ 然后尝试了HelloFacebookSample示例程序。这一切都很好。

之后我开始将FacebookSDK.framework集成到我自己的应用程序中。这是出问题的地方。 我创建了一个新应用:https://developers.facebook.com/ 然后打算按照上面提到的入门文档中的步骤,同时尝试模仿我在HelloFacebookSample中看到的内容。 但我必须遗漏一些重要细节,因为没有发布任何内容。

我(可能)做错了什么?

再见。

P.S。如果这有助于我在我的应用程序中按下FB按钮时触发的方法:

- (IBAction)faceBkButtonHandler:(id)sender
{
        NSURL *urlToShare = [NSURL URLWithString:@"http://developers.facebook.com/ios"];

        // If it is available, we will first try to post using the share dialog in the Facebook app
        FBAppCall *appCall = [FBDialogs presentShareDialogWithLink:urlToShare
                                                              name:@"Hello Facebook"
                                                           caption:nil
                                                       description:@"The 'Hello Facebook' sample application showcases simple Facebook integration."
                                                           picture:nil
                                                       clientState:nil
                                                           handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
                                                               if (error) {
                                                                   NSLog(@"Error: %@", error.description);
                                                               } else {
                                                                   NSLog(@"Success!");
                                                               }
                                                           }];

        if (!appCall) {
            // Next try to post using Facebook's iOS6 integration
            BOOL displayedNativeDialog = [FBDialogs presentOSIntegratedShareDialogModallyFrom:self
                                                                                  initialText:nil
                                                                                        image:nil
                                                                                          url:urlToShare
                                                                                      handler:nil];

            if (!displayedNativeDialog) {
                // Lastly, fall back on a request for permissions and a direct post using the Graph API
                [self performPublishAction:^{
                    NSString *message = [NSString stringWithFormat:@"HERE (22) at %@",[NSDate date]];

                    FBRequestConnection *connection = [[FBRequestConnection alloc] init];

                    connection.errorBehavior = FBRequestConnectionErrorBehaviorReconnectSession
                    | FBRequestConnectionErrorBehaviorAlertUser
                    | FBRequestConnectionErrorBehaviorRetry;

                    [connection addRequest:[FBRequest requestForPostStatusUpdate:message]
                         completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {

                             //[self showAlert:message result:result error:error];
                             //self.buttonPostStatus.enabled = YES;
                         }];
                    [connection start];

                    //self.buttonPostStatus.enabled = NO;
                }];
            }
        }
}

0 个答案:

没有答案