iOS:上传到Facebook的照片并不总是上传

时间:2011-08-31 23:41:22

标签: ios facebook upload photo fbconnect

我有一个iPhone / iPad应用程序可以进行一些基本的照片编辑,并为用户提供将成品上传到Facebook的选项。该应用程序拥有超过100,000名用户,而且大多数人似乎都没有将照片上传到Facebook的问题。但是,有少数用户无论他们尝试什么,似乎都无法上传他们的照片。我与他们合作,以确保它不是应用程序权限或Facebook设置阻止他们,并在那里找不到任何问题。所以我想知道我是否正在使用FBConnect做错误导致问题偶尔出现。这是代码:

- (void)initFacebook {
  if( self.facebook == nil ) {
    Facebook *fb = [[Facebook alloc] init];
    self.facebook = fb;
    [fb release];
  }

  if( [self.facebook isSessionValid] ) { 
    [[NSNotificationCenter defaultCenter] postNotificationName:@"FacebookIsReady"
                                                    object:nil
                                                  userInfo:nil];

  } else {
    NSArray *perms = [NSArray arrayWithObjects:@"publish_stream", @"user_likes", nil];
    [self.facebook authorize:MY_FB_APP_ID permissions:perms delegate:self];
  }
}

-(void)fbDidLogin {
    [[NSNotificationCenter defaultCenter] postNotificationName:@"FacebookIsReady"
                                                    object:nil
                                                  userInfo:nil];
}

// this is in a different class
- (void)facebookIsReady:(NSNotification *)notification {    
    AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:self.theImage, @"source", nil];

    [appDelegate.facebook requestWithGraphPath:@"/me/photos" 
                                         andParams:params 
                                     andHttpMethod:@"POST" 
                                       andDelegate:appDelegate];
}

在FBRequestDelegate中,即使照片无法显示在Facebook个人资料中,也始终会调用didLoad。所以我得到的是代码似乎永远不会失败,但照片并不总是出现在Facebook个人资料中。

该应用是否可能无法在用户个人资料中创建新相册?我见过其他人之前在各个小组上报告过这个问题,但从未找到过实际的解决方案。感谢。

2 个答案:

答案 0 :(得分:0)

您必须在权限数组中包含user_photos,如下所示:

NSArray *permissions = [[NSArray alloc] initWithObjects:
    @"user_photos",
    @"publish_stream",
    @"user_likes",
     nil];

以下是所有权限的列表:https://developers.facebook.com/docs/reference/api/permissions/

答案 1 :(得分:0)

  • 在Facebook上上传照片vie社交框架更容易。
  • 请查看以下链接 Fabecook Sharing
相关问题