2013-09-02 24 views
9

Tôi đang gặp khó khăn khi tạo hộp thoại gửi FB.ui khi ứng dụng web của tôi đang chạy trên iPhone. Đây là đoạn mã, trong javascript:FB.ui gửi hộp thoại không hoạt động trên iPhone

if(navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPhone/i)){ 
     window.top.location = "http://m.facebook.com/dialog/send?app_id=<<My_App_Id>>&link=<<The_Link>>&redirect_uri=<<The_Url>>&to=<<User_Id>>"; 
    } else{ 
     FB.ui({method: 'send', 
      link: "<<The_Link>>", 
      picture: picture, 
      description: description, 
      to: User_Id 
     }); 
    } 

Nó hoạt động tốt khi tôi sử dụng bất kỳ trình duyệt nào trên cửa sổ, cũng hoạt động tốt bằng Safari trên iPad. Nhưng khi tôi cố gắng mở một hộp thoại để gửi tin nhắn trên iPhone, tôi sẽ thấy các lỗi sau:

Hộp thoại này không khả dụng trên thiết bị này. API Error Code: 4202 API Lỗi Mô tả: Hộp thoại này không thể được hiển thị trên thiết bị Thông báo lỗi này: Phương pháp này không được hỗ trợ cho loại màn hình này

Tôi đã có thông báo lỗi này khi tôi gọi FB. ui ({}) phương pháp trên iPad và, do đó, tôi tạo ra rằng nếu tuyên bố để điều trị tình trạng này trên iPad. Nhưng cách giải quyết này không hiệu quả đối với iPhone.

Ai đó có thể giúp tôi?

Trả lời

6

Hộp thoại này có thể được sử dụng với SDK JavaScript và bằng cách thực hiện chuyển hướng đầy đủ đến URL. Nó không được hỗ trợ trên thiết bị di động. https://developers.facebook.com/docs/reference/dialogs/send/

+1

trong một số trường hợp, bạn có thể muốn sử dụng https://developers.facebook.com/docs/plugins/send-button này làm giải pháp tạm thời :( –

+1

@GoonNguyen Bạn hoàn toàn nên đăng câu trả lời đó như một câu trả lời thực tế cho câu hỏi - chắc chắn [Send Button] (https://developers.facebook.com/docs/plugins/send-button) sẽ phục vụ cho mục đích của tôi và tôi đã thử nghiệm nó thành công trên điện thoại của tôi. Ping tôi nếu bạn gửi nó như là một trả lời vì vậy tôi có thể đến upvote bạn :) –

+1

Cảm ơn @OwenBlacker, tôi đã chỉ reposted nó! –

1

(Chỉ cần repost này như một câu trả lời)

Trong một số trường hợp, bạn có thể muốn sử dụng https://developers.facebook.com/docs/plugins/send-button này như một giải pháp tạm thời.

Rất tiếc, bạn không thể thay đổi giao diện của nút này.

+1

Cảm ơn Goon Nguyen, đó chính xác là những gì tôi đang tìm :) –