2011-08-04 28 views
7

Thật đơn giản khi sử dụng Facebook SDK Javascript và FB.ui để kích hoạt hộp thoại "nguồn cấp dữ liệu" để chia sẻ trên tường của bạn.Cách sử dụng nội dung chia sẻ cho tường của bạn bè cụ thể trên Facebook từ ứng dụng iOS

Tuy nhiên, lượt chia sẻ này trên tường của bạn với mọi người. Tôi đang tìm cách chia sẻ trên tường của một người bạn cụ thể và không tìm thấy bất kỳ câu trả lời nào trong tài liệu hướng dẫn của nhà phát triển Facebook.

tôi đã muốn bỏ cuộc nhưng họ thấy this article viết tháng 6 năm 2011 trong đó cho thấy FB UI chia sẻ cho thấy rằng bạn có thể thay đổi phạm vi chia sẻ của bạn:

Screenshot of FB sharing dialog with scoping

tôi không thể tìm thấy bất kỳ thông tin cho thấy cách kích hoạt hộp thoại này để hiển thị các tùy chọn đó. Tôi đã sử dụng mã mẫu này từ FB dev docs:

<html xmlns:fb="http://www.facebook.com/2008/fbml"> 
    <body> 
    <script src="http://connect.facebook.net/en_US/all.js"></script> 
    <div id="fb-root"></div> 
    <script> 
     // assume we are already logged in 
     FB.init({appId: '1234567890', xfbml: true, cookie: true}); 

     FB.ui({ 
      method: 'feed', 
      link: 'https://developers.facebook.com/docs/reference/dialogs/' 
      }); 
    </script> 
    </body> 
</html> 

Tuy nhiên, điều này mang đến một hộp thoại cơ bản như sau. Chú ý không có tùy chọn Phạm vi như ảnh chụp màn hình trước đó:

enter image description here

Lưu ý: Mặc dù tôi đang hỏi về Javascript SDK và hiển thị HTML, tôi cuối cùng tôi muốn sử dụng Facebook iOS SDK để chia sẻ một liên kết từ của tôi Ứng dụng iOS cho một người bạn riêng lẻ của người dùng đã đăng nhập vào ứng dụng của tôi (trong khi cho phép người dùng đó chọn người bạn nào muốn chia sẻ).

Trả lời

1

Hộp thoại nguồn cấp dữ liệu của chúng tôi không cho phép đăng bài lên tường của người dùng khác. Để làm điều này, tôi sẽ đề nghị sử dụng send dialog của chúng tôi cho phép nhà phát triển chỉ định người dùng người nhận (người dùng cuối có thể thêm người dùng bổ sung khi hộp thoại được hiển thị).

Nó có thể được trả lại thông qua api biểu đồ như vậy:

https://www.facebook.com/dialog/send?app_id=123050457758183& 
name=People%20Argue%20Just%20to%20Win& 
link=http://www.nytimes.com/2011/06/15/arts/people-argue-just-to-win-scholars-assert.html& 
redirect_uri=http://www.example.com/response 
+0

Tôi không hiểu làm thế nào nó có chứa rằng bài viết tôi trích dẫn có ảnh chụp màn hình tôi đã cho thấy. Nó cho thấy rõ ràng rằng bạn có thể phạm vi nó. FB tài liệu dev nói rằng hộp thoại Gửi gửi tin nhắn dưới dạng tin nhắn riêng tư và không đăng lên tường. Tài liệu có đúng không? (Tôi quên đề cập đến rằng cuối cùng tôi dự định sử dụng điều này trong ứng dụng iOS của chúng tôi) – TMC

+1

Vì vậy, đối với trường 'to' của hộp thoại gửi, nó nói, 'ID người dùng hoặc tên người dùng để gửi tin nhắn. Khi hộp thoại xuất hiện, người dùng có thể chỉ định người dùng bổ sung, nhóm Facebook và địa chỉ email để gửi thư. ' Vì vậy, không có nó không thể trực tiếp trên mặt của bạn nhưng vẫn có thể trong hộp thoại này. Đó là tất cả tư nhân, bạn là chính xác - bạn có thể gửi đến hồ sơ thông qua nút gửi, nhưng không rõ ràng mặc dù các api hộp thoại: -/Tôi sẽ nộp một lỗi. – DSchultz

+1

Tuy nhiên, bạn vẫn có thể chỉ định trường 'đến' trong hộp thoại [trường] (https://developers.facebook.com/docs/reference/dialogs/feed/) sẽ đăng câu chuyện từ người dùng của bạn lên tường của người dùng khác. Hy vọng rằng làm rõ mọi thứ. – DSchultz

0

Theo như tôi biết, nơi duy nhất một hộp thoại như thế xuất hiện là thông qua các thiết bị đầu cuối sharer.php, ví dụ https://www.facebook.com/sharer.php?u=http%3A%2F%2Fwww.stackoverflow.com. Điểm cuối đó dường như đã không được chấp nhận (có một số Quora thread về nó), nhưng nó vẫn hoạt động ngay bây giờ.

Có thể hộp thoại chia sẻ được sử dụng để có sẵn dưới dạng giao diện người dùng, nhưng theo tôi có thể biết điều đó không còn là trường hợp nữa, do đó mở sharer.php trong ứng dụng của bạn là cách duy nhất để hiển thị các tùy chọn phạm vi đó. Tuy nhiên, điều này khá khó khăn trong các trình duyệt di động - bộ chọn bạn tùy chỉnh của bạn theo sau là một hộp thoại feed được cho là một giải pháp hấp dẫn hơn.

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