由于一般原因,Facebook app拒绝

时间:2014-06-06 04:32:15

标签: ios facebook social-framework

我正在开发一个应用程序,需要将订阅源发布到用户的Facebook页面。此功能是使用Social框架实现的,并未集成facebook SDK。检索设备设置中关联的帐户,并将一些数据(链接或文本)发布到用户Feed。

当我为此目的在facebook中创建一个新应用程序时,我看到了一个新的审核流程。我通过上传模拟器构建,截图和所有需要的信息提交了评论。今天我收到来自Facebook的警报,我的应用程序因某些原因被拒绝了。

'您的应用未展示真实的用户环境或似乎是测试提交。如果您的应用正在开发中,请仅在您的应用详细信息代表完整的真实用户体验时重新提交。'

我的应用程序正在开发中,并没有完全正常运行。但我只在初次登录时需要facebook支持。我不知道接下来应该做些什么。请帮忙。有没有办法联系Facebook团队以获得更快的响应?

1 个答案:

答案 0 :(得分:1)

使用社交框架时,您不需要使用Facebook App ID发布到fb,因此您不需要在Facebook中创建应用程序。你只需要这样做:

- (IBAction)socialSheet:(id)sender {

   // create Facebook controller
   SLComposeViewController *socialController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

   // add initial text
   [socialController setInitialText:@"Blah blah.."];

   // add an image
   [socialController addImage:[UIImage imageNamed:@"my_picture.jpg"]];

   // maybe even add a URL
   [socialController addURL:[NSURL URLWithString:@"http://my.cool.link.com"]];

   // present controller
   [self presentViewController:socialController animated:YES completion:nil];
}


为避免错误,您可以测试服务是否可用,如下所示:

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
   // user has setup their Facebook account in Settings, show Facebook option
}


- 更新 -

如果您需要按照以下评论中的要求发布到fb而不提交表单,那么您可以使用此处记录的SLRequesthttps://developer.apple.com/library/ios/documentation/Social/Reference/SLRequest_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40012234

示例:

-(IBAction)postMessage:(id)sender
{
    // fb endpoint URL
    NSURL *postURL = [NSURL URLWithString:@"https://graph.facebook.com/me/feed"];

    NSDictionary *postDict = @{
       @"link"    : @"http://some.cool.link.com/",
       @"message" : @"The message I'm posting..",
       @"picture" : @"http://url.to/my/picture.png",
       ... other key-value pairs that you may need, depending on your circumstances
    };

    SLRequest *postToMyWall = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodPOST URL:postURL parameters:postDict];

    FacebookAccountManager* sharedManager = [FacebookAccountManager sharedAccount];
    [postToMyWall setAccount:sharedManager.facebookAccount];

    [postToMyWall performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
         // do something with the response or handle error
    }];
}