0

ユーザーが一部のデータを共有できるように、Facebook ネイティブの共有ダイアログを iOS アプリに含めました。問題は、ダイアログが開かないことです。これがコードです。また、画像のURLをメソッドに渡すのは普通ですか?もしかして、これが問題?

    BOOL displayedNativeDialog =
        [FBNativeDialogs
           presentShareDialogModallyFrom:self
           initialText:activityName 
           image:activityImageURL
           url:activityURL
           handler:^(FBNativeDialogResult result, NSError *error) {
           if (error) {
               NSLOG(@"Error occured");
           } else {
               if (result == FBNativeDialogResultSucceeded) {
                   NSLOG(@"Success");
               } else {
                   NSLOG(@"No success");
               }
           }
      }];
   if (!displayedNativeDialog) {
      NSLOG("Window does notdisplayed");
   }
4

2 に答える 2

0

image:activityImageURLの代わりに、UIImageデータを画像画像に渡します:[UIImageimageWithNamed:@ "blahblah"]

于 2013-02-01T16:59:44.653 に答える
0

ユーザーが Facebook アプリをインストールしている場合にのみ、ネイティブ ダイアログを使用できます。最初に Facebook アプリが利用可能かどうかを確認してから、ネイティブ ダイアログを表示するか、それに応じて Web ダイアログを表示します。

FBShareDialogParams *shareParams = [[FBShareDialogParams alloc] init];
shareParams.link = [NSURL URLWithString:@"http://some-url.com"];
shareParams.name = @"Post Name";
shareParams.picture= [NSURL URLWithString:someImageURL];
shareParams.description = @"Post Description";

if ([FBDialogs canPresentShareDialogWithParams:shareParams])
{
    [FBDialogs presentShareDialogWithParams:shareParams
                                clientState:nil
                                    handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
                                        NSLog(@"%@", [error localizedDescription]);
                                    }];
}
else
{
    NSDictionary *params = @{
                             @"name" : shareParams.name,
                             @"description" : shareParams.description,
                             @"picture" : objectiveCharacterImageURL,
                             @"link" : linkURL
                             };

    [FBWebDialogs presentFeedDialogModallyWithSession:nil
                                           parameters:params
                                              handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {

                                              }];
}
于 2014-04-29T22:02:05.463 に答える