Facebook FB.ui对话框iOS Web App无法使用

时间:2015-04-02 01:02:01

标签: facebook-javascript-sdk iphone-web-app

我有FB.ui运作良好,我可以分享我需要分享的任何信息。然而问题是,它正在被用于ipad的Web应用程序(这个"添加到主屏幕")。每当对话框打开时,它都会全屏打开,一旦共享,就无法关闭打开的对话框。

<input type="button" onclick="share_prompt()" value="Share" />
function share_prompt()
{


FB.ui(
   {
     method: 'feed',
     display: "iframe",
     name: 'Facebook Dialogs',
     link: 'http://developers.facebook.com/docs/reference/dialogs/',
     picture: 'http://fbrell.com/f8.jpg',
     caption: 'Reference Documentation',
     description: 'Dialogs provide a simple, consistent interface for applications to interface with users.',
     message: 'Facebook Dialogs are easy!'
   },
   function(response) {
     if (response && response.post_id) {
       alert('Post was published.');
     } else {
       alert('Post was not published.');
     }
   }
 );
 }

我已经改变了&#34;显示&#34;属于一切可能的属性,但文档说它默认为&#34; touch&#34;在网络应用中显示。

另外,为了让它更令人沮丧,在网络应用模式下响应并不会激发。仅在浏览器窗口中。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

这就是我解决这个问题的方法:

  if(navigator.standalone){
    new_url = 'https://www.facebook.com/dialog/feed?'+
                'app_id=XXXXXXXXXXXXX'+
                '&display=popup'+
                '&caption='+fbName+
                '&picture='+fbPicture+
                '&description='+fbDescription+
                '&link='+fbLink+
                '&redirect_uri=http://myurl.com/mycontroller/#post_id';

        window.open(new_url,'_self');
  } else {
  //do the normal way
  }

这样您就可以拥有重定向网址,如果需要,可以将帖子ID发回给您的应用。希望如果你仍然找不到解决问题的方法,这可以回答你的问题。