0

私はFacebook SDK 3.0を使用しています(Xcode 4.3.2も使用し、ARCを無効にします)。ログイン用のコードをすでに作成し、自分のFacebookウォールにテキストメッセージを投稿しました(上記のコード)。すべてが完全に実行されます:

        - (IBAction)loginFacebook:(id)sender {

    // Initiate a Facebook instance
    Facebook *facebook = [[Facebook alloc] initWithAppId:@"My_App_ID" andDelegate:nil];

    // Set the session information for the Facebook instance
    facebook.accessToken = self.session.accessToken;
    facebook.expirationDate = self.session.expirationDate;

    // Put together the dialog parameters
    NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                   @"I'm using Emoji-Smileys", @"name",
                                   @"Facebook for iOS", @"caption",
                                   @"Check out the application Emoji-Smileys for iOS to enable emoji keyboard, and make fun messages! There are 460 smileys!", @"description",
                                   @"http://m.facebook.com/apps/hackbookios/", @"link",
                                   @"http://a365.phobos.apple.com/us/r30/Purple/v4/fa/96/4c/fa964c2a-3a48-4f6d-7789-d3105a392a9f/mzl.evuvwyjk.png?downloadKey=1343552764_471c078e9d07fde2b00bd3f1ee1d88a7", @"picture", 
                                   nil];    

    // Invoke the dialog
    [facebook dialog:@"feed" andParams:params andDelegate:self];
        }

        - (FBSession *)createNewSession
        {
    self.session = [[FBSession alloc] init];
    return self.session;
        }

        - (void)sessionStateChanged:(FBSession *)session 
                      state:(FBSessionState) state
                      error:(NSError *)error
        {
    switch (state)         {
        case FBSessionStateOpen:
            if (!error)         {
                // We have a valid session
                NSLog(@"User session found");
                    }
            break;
        case FBSessionStateClosed:
        case FBSessionStateClosedLoginFailed:
            [session closeAndClearTokenInformation];
            self.session = nil;

            [self createNewSession];
            break;
        default:
            break;
            }

    if (error)         {
        UIAlertView *errorAlert = [[UIAlertView alloc] 
                                  initWithTitle:@"Error"
                                  message:error.localizedDescription
                                  delegate:nil
                                  cancelButtonTitle:@"OK"
                                  otherButtonTitles:nil];
        [errorAlert show];
            }    
        }

        - (void) openSession         {

    [self.session openWithCompletionHandler:
     ^(FBSession *session, FBSessionState state, NSError *error) {
         [self sessionStateChanged:session state:state error:error];
     }]; 
        }

        - (BOOL)application:(UIApplication *)application 
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication 
         annotation:(id)annotation 
        {
            return [self.session handleOpenURL:url]; 

        }

さて、私は自分のアプリケーションで提供する画像を投稿する方法を知りたいのですが、UIImagePickerViewController を使用する必要はありません。画像を選択したくありません。publish_stream、read_stream、または user_likes のアクセス許可が必要かどうかはわかりません。

よろしくお願いします。

乾杯。

4

2 に答える 2

1

あなたは私を助けたこのコードを使うことができます:

[FBRequestConnection startForUploadPhoto:myImg.image
                                   completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                                       if (!error) {
                                           // is success do something...
                                       } else {
                                          // If some error , do something...
                                       }
                                   }];

myImg置き換えることができる画像です:

[UIImage imageNamed:@"image.jpg"]
于 2013-01-15T21:21:26.193 に答える
0

これらのチュートリアルが大いに役立つと思います:

http://www.raywenderlich.com/1488/how-to-use-facebooks-new-graph-api-from-your-iphone-app

http://www.raywenderlich.com/1578/how-to-get-a-user-profile-with-facebooks-new-graph-api-from-your-iphone-app

http://www.raywenderlich.com/1626/how-to-post-to-a-users-wall-upload-photos-and-add-a-like-button-from-your-iphone-app

そして、このサイトをブックマークしてください。すばらしいチュートリアルがたくさんあります!)

于 2012-07-22T17:30:09.663 に答える