2013-04-23 28 views
7

Tôi đang tích hợp Facebook vào đơn đăng ký của mình để chia sẻ liên kết của trang web. Tôi đang sử dụng Hộp thoại nguồn cấp dữ liệu để thực hiện việc này và tôi đang làm theo hướng dẫn sau:
https://developers.facebook.com/docs/howtos/feed-dialog-using-ios-sdk/.nil resultURL sau khi đăng thành công với FBWebDialogs (Facebook SDK 3.5)

Tôi đã đăng nhập và đăng lên Facebook nhưng tôi muốn thêm thông báo khi bài đăng thành công. Hướng dẫn này được tích hợp sẵn, nhưng mỗi lần tôi đăng, tôi thấy "Xuất bản câu chuyện do người dùng hủy." trong Nhật ký là thông báo được hiển thị khi người dùng nhấp vào hủy. Bên cạnh đó, tôi đã xác nhận với trình gỡ lỗi rằng thông số resultURL mà trình xử lý nhận được luôn luôn là không ngay cả khi đăng bài thành công.

Lúc đầu, mặc dù đó là sự cố cấu hình trong số Facebook App của tôi, nhưng tôi quyết định thực hiện kiểm tra. Tôi đã mở RPSSample đi kèm với khung công tác, đã thêm trình xử lý hoàn thành vào cuộc gọi presentRequestsDialogModallyWithSession trong phương thức clickInviteFriends trong bộ điều khiển chế độ xem RPSFriendsViewController.m và tôi cũng nhận được số không resultURL về các bài đăng thành công ở đó.

Tôi đang thiếu gì đó?

Tôi biết phiên bản SDK 3.5 rất mới, nhưng theo tài liệu tôi sẽ nhận được thông số resultURL hợp lệ sau khi đăng qua Hộp thoại Facebook Facebook vì vậy tôi không chắc chắn đó có phải là lỗi hay không ' m thiếu một số gọi lại hoặc xử lý một nơi nào đó.

Chỉ trong trường hợp, đây là cuộc gọi của tôi tới Hộp thoại web nguồn cấp dữ liệu. Nó có những thay đổi nhỏ so với cái có trong hướng dẫn (nó thực sự đơn giản hơn)

- (void)publish: (EntityToShare *)entityToShare { 
NSMutableDictionary *params = 
[NSMutableDictionary dictionaryWithObjectsAndKeys: 
entityToShare.link, @"link", 
nil]; 

// Invoke the dialog 
[FBWebDialogs presentFeedDialogModallyWithSession:nil 
             parameters:params 
              handler: 
^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { 
    if (error) { 
     // Error launching the dialog or publishing a story. 
     NSLog(@"Error publishing story."); 
    } else { 
     if (result == FBWebDialogResultDialogNotCompleted) { 
      // User clicked the "x" icon 
      NSLog(@"User canceled story publishing."); 
     } else { 
      // Handle the publish feed callback 
      NSDictionary *urlParams = [self parseURLParams:[resultURL query]]; 
      if (![urlParams valueForKey:@"post_id"]) { 
       // User clicked the Cancel button 
       NSLog(@"User canceled story publishing."); 
      } else { 
       // User clicked the Share button 
       NSString *msg = [NSString stringWithFormat: 
            @"Posted story, id: %@", 
            [urlParams valueForKey:@"post_id"]]; 
       NSLog(@"%@", msg); 
       // Show the result in an alert 
       [[[UIAlertView alloc] initWithTitle:@"Result" 
              message:msg 
              delegate:nil 
            cancelButtonTitle:@"OK!" 
            otherButtonTitles:nil] 
        show]; 
      } 
     } 
    } 
}]; 
} 
+0

Có cùng một vấn đề. –

Trả lời

9

Chúng tôi đã khắc phục sự cố này và sẽ sớm bị đẩy ra.

được sửa đổi:

này hiện đã được cố định trong phiên bản SDK 3.5.1 Kiểm tra nó ra ở đây: https://developers.facebook.com/ios/

+0

Tôi gặp vấn đề tương tự như Diego. Khi nào bạn mong muốn có nó cố định? – user498388

+1

Tuyệt vời! Cảm ơn bạn đã trả lời quá nhanh. Điều này khiến tôi phát điên. Vì vậy, đây có phải là vấn đề máy chủ hoặc có vấn đề gì với SDK không? –

+1

Tôi đang chờ điều này quá cấp thiết, có phải chỉ là lỗi api sẽ không ảnh hưởng đến mã gốc của tôi không? – ValentiGoClimb

Các vấn đề liên quan