通过我们的应用程序在ios上分享“facebook Page”上的文字

时间:2013-02-20 22:23:21

标签: iphone ios objective-c ipad facebook-graph-api

我有一个Facebook页面,我希望在该页面上分享一些文本,就像我们在我们的应用程序中分享“me / feed”时的状态一样。

请有人建议我应该怎么做?

2 个答案:

答案 0 :(得分:0)

对于iOS 6.0,你可以这样做:

    NSString *text1 = [NSString stringWithFormat:@"%@ %@", NSLocalizedString(@"Check out this nice'... ", @""), self.title];
    NSString *text2 = [NSString stringWithFormat:@"%@ %@", NSLocalizedString(@"in", @""), self.restaurant.title];
    NSString *text3 = NSLocalizedString(@"Sent from FoodRock Menus App", @"");
    NSURL *appURL = [NSURL URLWithString:@"http://testappstorelink.com"];
    NSArray *activityItems = [NSArray arrayWithObjects:text1, text2, text3, appURL, photo, nil];
    UIActivityViewController *actVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems
                                                                        applicationActivities:nil];
    actVC.excludedActivityTypes = [NSArray arrayWithObjects:UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard,
                                   UIActivityTypePrint, UIActivityTypeSaveToCameraRoll, nil];
    actVC.completionHandler = ^(NSString *activityType, BOOL completed){
        DLog(@"ACTIVITYTYPE: %@ FINISHED: %@", activityType, completed ? @"YES" : @"NO");
        if (completed) {
            NSString *socialString = @"";
            if ([activityType containsSubstring:@"PostToTwitter"]) {
                socialString = @"Twitter";
            } else if ([activityType containsSubstring:@"PostToFacebook"]) {
                socialString = @"Facebook";
            } else if ([activityType containsSubstring:@"Message"]) {
                socialString = @"Message";
            } else if ([activityType containsSubstring:@"Mail"]) {
                socialString = @"Mail";
            }
            [[FRNWAchievementsController controller] reportSocialShareEvent:socialString menuItem:self];
        }
    };
    return actVC;

答案 1 :(得分:0)

以下是一些可以帮助您的代码片段,但您还应该看看Facebook开发人员的示例,这些示例非常好。

        // To log in to Facebook with permission to post...
        m_Facebook = [[Facebook alloc] initWithAppId:YOUR_FACEBOOK_APPID
                                     andDelegate:self];
        m_FacebookPermissions = [[NSArray 
            arrayWithObjects:/*@"read_stream",*/ @"publish_stream", nil] retain];
        [m_Facebook authorize:m_FacebookPermissions];

在fbDidLogin回调告诉您已登录后的其他一些方法中:

// After successful login…
NSMutableDictionary *params = [NSMutableDictionary  dictionaryWithObjectsAndKeys:
                               WHAT_YOU_WANT_TO_SAY, @"message",
                            nil];
[m_Facebook requestWithGraphPath:@"/me/feed"
                      andParams:params
                  andHttpMethod:@"POST"
                    andDelegate:self];