【问题标题】:Embedding facebook video in react-native app在 react-native 应用程序中嵌入 facebook 视频
【发布时间】:2016-09-30 23:35:58
【问题描述】:

是否可以在react-native 应用中嵌入来自公开帖子的 Facebook 视频?

如果可能的话,我相信我需要使用 <WebView> 组件,这是我用于其他几种视频嵌入的组件,但 Facebook 嵌入是不同的。我们已经在我们的 Web 客户端上实现了它,但是我不确定如何在 react-native 中重新创建它的一些 DOM 特定方面。

这是我成功用于其他视频类型(例如 Vine、Vimeo)的解决方案,但对于 FB,它只是渲染图像

<WebView source={{ uri: 'https://www.facebook.com/TheWitBible/videos/1747642252158297/' }} style={ styles.media } />

这里是文档https://developers.facebook.com/docs/plugins/embedded-video-player

这是一个 FB SDK 组件,但我认为它不支持这个用例 https://github.com/facebook/react-native-fbsdk

在网络客户端中,有两个部分可以让它工作

<script>
  window.fbAsyncInit = function() {
    FB.init({
      xfbml: true,
      version: 'v2.6'
    });
  };
  (function(d, s, id){
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/en_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));
</script>

.......................

render() {
    return (
      <div ref={el => el && FB && FB.XFBML.parse(el)} className="fb-media-wrapper" style={{ width: this.props.width + 'px' }}>
        <div className="fb-video" data-href={this.props.url} data-width={this.props.width}></div>
      </div>
    );
  }

【问题讨论】:

    标签: facebook react-native


    【解决方案1】:

    它对我有用

    <WebView 
     style={styles.yourStyles} 
     source={{ uri: 'https://www.facebook.com/video/embed?video_id=<YOUR_ID_VIDEO>'}}  />
    

    【讨论】:

    • 这可行,但除非用户按下视频,否则控件不会显示
    【解决方案2】:

    我的意思是这对我来说完全没问题

    <WebView style={{width:350,height:null}} 
     source={{ uri: 'https://www.facebook.com/chris.phillips.56027281/videos/vb.100003747765310/914766415324942?type=2&theater'}}  />
    

    【讨论】:

    • 如何防止默认全屏播放(iOS)?
    • 在 WebView 中嵌入 FB 视频对我不起作用。我得到了一个“抱歉,出了点问题”的错误信息(但是,YT 工作正常)
    • @dfucci 看看gist.github.com/alaingoldman/1d90890ec928c55ddcdb4f2b4a11f866这是你如何让它工作的,也给我点赞:)
    • 我可以在一个signe屏幕上显示多少?你试过加载多个吗?
    猜你喜欢
    • 2018-09-05
    • 2018-08-28
    • 2019-07-21
    • 1970-01-01
    • 2014-01-22
    • 2016-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多