Pregunta

Todavía estoy usando la antigua API del gráfico de Facebook para publicar cosas en una pared de usuarios en mi aplicación.Dado que Facebook iOS6 se ha integrado en el sistema operativo.¿Cómo puedo usarlo para publicar cosas?Quiero usarlo de la misma manera que el marco de Twitter:

    TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];
    [tweetViewController setInitialText:@"bla bla bla"];
    [self dismissModalViewControllerAnimated:YES];
    [self presentModalViewController:tweetViewController animated:YES];

¿Fue útil?

Solución

Comenzando con iOS 6 Puede usar SlcomPongeViewController para todos los tipos de servicio compatibles como Twitter, Facebook y Weibo. Nota: No olvides agregar el Social.Framework

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
     SLComposeViewController *fb = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
     [fb setInitialText:@"bla bla bla"];
     [self presentModalViewController:fb animated:YES];
}

Otros consejos

Si desea que sus publicaciones vayan "a través de mi nombre de aplicación", puede usar Slíquest:

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

    NSString *link = [[NSString alloc] init];
    NSString *message = [[NSString alloc] init];
    NSString *picture = [[NSString alloc] init];
    NSString *name = [[NSString alloc] init];
    NSString *caption = [[NSString alloc] init];
    NSString *description = [[NSString alloc] init];

    link = @"http://developer.apple.com/library/ios/#documentation/Social/Reference/Social_Framework/_index.html%23//apple_ref/doc/uid/TP40012233";
    message = @"Testing Social Framework";
    picture = @"http://www.stuarticus.com/wp-content/uploads/2012/08/SDKsmall.png";
    name = @"Social Framework";
    caption = @"Reference Documentation";
    description = @"The Social framework lets you integrate your app with supported social networking services. On iOS and OS X, this framework provides a template for creating HTTP requests. On iOS only, the Social framework provides a generalized interface for posting requests on behalf of the user.";

    NSDictionary *postDict = @{
    @"link": link,
    @"message" : message,
    @"picture" : picture,
    @"name" : name,
    @"caption" : caption,
    @"description" : description
    };

    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)
    {
        if (error) {
            // If there is an error we populate the error string with error
            _errorString = [NSString stringWithFormat:@"%@", [error localizedDescription]];

            // We then perform the UI update on the main thread. All UI updates must be completed on the main thread.
            [self performSelectorOnMainThread:@selector(updateErrorString) withObject:nil waitUntilDone:NO];
        }

        else
        {
            NSLog(@"Post successful");
            NSString *dataString = [[NSString alloc] initWithData:responseData encoding:NSStringEncodingConversionAllowLossy];
            NSLog(@"Response Data: %@", dataString);
        }
     }];

    // Tidy Up
    link = nil;
    message = nil;
    picture = nil;
    name = nil;
    caption = nil;
    description = nil;
    postDict = nil;
    postToMyWall = nil;
    postURL = nil;

}

http://thoyorkingbear.com/social-framework-reference/ para el completoTutorial

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top