1

Facebookで共有するには、Facebookアプリを作成する必要があるのではないかと思っていました。

ユーザーに実際にログインしたり、このようなことをしたくありません。

Facebookのドキュメントにあるように、前提条件は「Facebookログインをすでに設定していることを確認する」ことです。ユーザーはすでにネイティブのFacebookアプリにログインしているので、これが本当に必要なのか、それとも私がバイパスできるものなのかを知りたかったのです。

4

2 に答える 2

1

FacebookのIDとパスワードを保存することについて話していると思います。

設定から行う必要があります...また、Facebook IDとパスワードが入力されているかどうかをロジックで確認できます。入力されていない場合、セッションはログインページに移動します。そうでない場合は、特定のものを共有します。

これがお役に立てば幸いです...

于 2013-03-06T07:16:26.390 に答える
0

これが私が話していたことです:

#pragma mark - Share

- (void)sharingStatus {
    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
        NSLog(@"service available");
        self.shareButton.enabled = YES;
        self.shareButton.alpha = 1.0f;
    } else {
        self.shareButton.enabled = NO;
        self.shareButton.alpha = 0.5f;
    }
}

- (IBAction)facebookPost:(id)sender {

    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {

        SLComposeViewController *mySLComposerSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];


        NSString *shareText = @"This is my share post!";
        [mySLComposerSheet setInitialText:shareText];

        [mySLComposerSheet addImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:self.imageURL]]];

        [mySLComposerSheet addURL:[NSURL URLWithString:@"http://yourURL.com"]];

        [mySLComposerSheet setCompletionHandler:^(SLComposeViewControllerResult result) {

            switch (result) {
                case SLComposeViewControllerResultCancelled:
                    NSLog(@"Post Canceled");
                    break;
                case SLComposeViewControllerResultDone:
                    NSLog(@"Post Sucessful");
                    break;
                default:
                    break;
            }
        }];

        [self presentViewController:mySLComposerSheet animated:YES completion:nil];
    }
}
于 2013-04-04T20:51:13.190 に答える