React-Native FBSDK Share Dialog仅适用于模拟器(iOS)

时间:2016-11-15 16:45:02

标签: dialog react-native share facebook-sdk-4.0 fbsdk

我尝试使用ShareDialog通过React-Native-FBSDK库共享链接。我的代码设置如下:

const shareContent = {
  contentType: 'link',
  contentDescription: 'Stuff here',
  contentTitle: 'Share Title',
  contentUrl: 'https://google.com',
  imageUrl: someUrl
}

ShareDialog.canShow(shareContent).then((canShow) => {
  canShow && ShareDialog.show(shareContent);
}

当它在Safari WebView中打开时,此代码在模拟器中工作但是当我在安装了Facebook应用程序的设备上加载它时,它会在我的应用程序上打开一个模型,但它只使用我给它的URL,然后填充来自页面上的元标记的所有其他数据,而不是使用我的代码。我需要做些什么才能让它与本机应用程序一起使用?

enter image description here enter image description here

iOS 10,react-native 0.30.0,react-native-fbsdk 0.4.0

1 个答案:

答案 0 :(得分:2)

我有同样的问题。我的解决方案是使用ShareButton而不是ShareDialog。它在我的iPhone 10.2中完美运行。

import {ShareButton} from "react-native-fbsdk";


const shareModel = {
        contentType: 'link',
        contentUrl: this.url,
        contentTitle: this.title,
        contentDescription: this.description,
        imageUrl: this.thumb
    };

<ShareButton shareContent={shareModel}/>