ios facebook sdk发布照片结果仅限我

ios facebook sdk发布照片结果仅限我,ios,facebook,facebook-graph-api,Ios,Facebook,Facebook Graph Api,当我在ios上使用facebook sdk从我的应用程序将照片发布到我的时间线上时,它不会显示在那里。相反,它进入了一个自定义相册(我喜欢),但我必须首先手动批准照片,然后照片在我的时间线上显示为“只有我”,我必须更改这些权限,其他人才能看到帖子 显然,这对于照片编辑应用程序来说并不理想 我正在使用我在这里和他们的示例中发现的代码变体。我可以张贴代码,如果它将帮助,但它的工作代码从这里。它几乎像是被“只有我”设置卡住了,即使在我的代码中我请求: defaultAudience:FBSessio

当我在ios上使用facebook sdk从我的应用程序将照片发布到我的时间线上时,它不会显示在那里。相反,它进入了一个自定义相册(我喜欢),但我必须首先手动批准照片,然后照片在我的时间线上显示为“只有我”,我必须更改这些权限,其他人才能看到帖子

显然,这对于照片编辑应用程序来说并不理想

我正在使用我在这里和他们的示例中发现的代码变体。我可以张贴代码,如果它将帮助,但它的工作代码从这里。它几乎像是被“只有我”设置卡住了,即使在我的代码中我请求:

defaultAudience:FBSessionDefaultAudienceFriends
我还没有提交我的fb应用程序详细信息页面,但我已将我的fb应用程序移出沙箱并进入live。将照片上传到我的个人资料中是可行的

我做错了什么

更新:

我发现应用程序本身设置为“只有我”。应用程序中心内:当我找到应用程序并点击“设置”时。。只有我一个人。我需要在默认情况下至少将其设置为Friends或Friends of Friends。我已经编译的fb应用程序示例的。。其中一些还只显示我喜欢的Scrumptius和SessionLoginSample,这可能是我获得登录代码的地方。HellowFBSample设置为Friends

关于为什么默认情况下将其设置为无用权限的任何想法。我不能期望用户切换权限

更新2:

我将继续并发布代码。。因为我发现了我的错误。。也许它会帮助别人。实际上,我从这里得到的代码:

我在那里编辑了选中的答案,但我复制了该代码,它有:

        [[FBSession activeSession] requestNewPublishPermissions:[NSArray arrayWithObject:@"publish_action"] defaultAudience:FBSessionDefaultAudienceFriends
                                          completionHandler:^(FBSession *session,NSError *error){
                                              [self publishStory];
                                          }];

公开行动是错误的。它必须与S一起发布行动。否则你会得到我得到的。它会私下保存照片,但会将应用程序设置为“仅限我”,因为你实际上没有发布照片的权限。

我使用它。但在上传之前,你必须获得Facebook的许可

NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                                             self.image, @"picture",
                                                             self.captionTextField.text, @"name", nil];
                              FBRequest *uploadRequest = [FBRequest requestWithGraphPath:@"me/photos"
                                                                              parameters:params
                                                                              HTTPMethod:@"POST"];
                              [uploadRequest startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error)
                               {

                               }];