2013-10-17 3 views
0

ios에서 facebook sdk를 사용하여 내 앱에서 내 타임 라인으로 사진을 게시하면 해당 이미지가 표시되지 않습니다. 대신 사용자 정의 사진 앨범 (내가 좋아하는)으로 들어가지만 수동으로 먼저 사진을 승인해야합니다. 그러면 내 일정에 '나만'으로 표시되는 사진이 표시되고 다른 사용자가 그 사진을 볼 수있게하려면 해당 권한을 변경해야합니다. 게시하다.ios facebook sdk 게시 사진의 결과는 나만

enter image description here

은 분명히이 사진 편집 응용 프로그램에 적합하지 않습니다.

저는 여기와 해당 샘플에서 다양한 코드를 사용하고 있습니다. 도움이된다면 코드를 게시 할 수 있지만 여기에서 작동하는 코드입니다. 그것은 거의가 함께 붙어처럼에 "나만이"설정 내 코드에서 나는 요구하고있어 비록 :

난 아직 내 FB 응용 프로그램의 세부 정보 페이지를 제출하지 않은하지만 샌드 박스에서 그리고 내 FB 응용 프로그램을 이동
defaultAudience:FBSessionDefaultAudienceFriends 

살다. 그것은 내 프로필에 사진을 업로드하는 중이 야 ...

내가 뭘 잘못하고있어?

는 UPDATE :

나는 응용 프로그램 자체가 "나만"으로 설정되어 있음을 발견했다. 앱 센터 : https://www.facebook.com/appcenter/my 앱을 찾고 설정을 조회하면 나만 설정됩니다. 최소한 기본적으로 친구들의 친구 또는 친구로 설정해야합니다. 필자가 컴파일 한 샘플 fb 앱 중 일부는 나만 보여줍니다. Scrumptious 및 SessionLoginSample처럼 로그인 코드가있는 곳일 것입니다. HellowFBSample은 친구로 설정됩니다.

기본적으로 쓸모없는 권한으로 설정되는 이유에 대한 아이디어. 사용자가 권한을 전환 할 것으로 기대할 수는 없습니다.

업데이트 2 :

나는 어쩌면 사람을 도움이 될 것입니다 .. 가서 내 오류를 발견 원인 .. 그 코드를 게시 할거야. 내가 여기에서 가져온 사실 코드 : 나는하지만 거기에 체크 대답을 편집 한

FBSession: an attempt was made reauthorize permissions on an unopened session

는 그 코드를 복사하여이 있었다 :

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

publish_action가 잘못된 것입니다. 그것은 S와 함께 publish_actions가되어야합니다. 그렇지 않으면 당신은 내가 얻은 것을 얻습니다. 개인적으로 사진을 저장하지만 게시 권한이 없으므로 앱을 "나에게"설정합니다.

답변

0

저는 이것을 사용합니다. 하지만 업로드하기 전에 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) 
           { 

           }]; 
+0

미안하지만 ... 나는 그것을 해결했습니다. 내 업데이트를 다시 읽으십시오. – badweasel