taro微信小程序直播


刚刚毕业之后就接的第一个项目,微信小程序,没搞过啊,不管了,搞。

从来没搞过啊,就使用了taro里面的组件live-player,拉流,但是高了几天不是这个组件,并且发现了这个组件的一个问题,拉流一直都是无法拉取,官方不知道解决了没,

其实使用的微信小程序的组件live-player-plugin

官网:https://developers.weixin.qq.com/miniprogram/dev/framework/liveplayer/live-player-plugin.html

没人教啊,得自己看文档。

自己搞,走了很多坑。

那开始代码:

可在app.json文件中主包和分包中引入

分包如下

"subpackages": [ { "plugins": { "live-player-plugin": { "version": "1.2.3", // 注意该直播组件最新版本号,微信开发者工具调试时可获取最新版本号(复制时请去掉注释) "provider": "wx2b03c6e691cd7370" // 必须填该直播组件appid,该示例值即为直播组件appid(复制时请去掉注释) } } } ]
分包引入:
{
        root: 'pages/liveRecord/',
        "pages": [
          "index"
        ],
        "plugins": {
          "live-player-plugin": {
            "version": "1.2.3",
            "provider": "wx2b03c6e691cd7370"  // 直播插件的ID  
          }
        }
      }
View Code

在拉取直播的列表中获取房间号room_id,跳转到直播间。看代码操作

  toLiveRecord (roomId) { //跳转到直播间
    Taro.navigateTo({
      url: `plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id=${roomId}`
    })
  }
//提示: url: `plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id=${roomId}`
不能修改,必须这样,之前踩的坑就是在这里了


页面:
render () {
    const { liveInfoList } = this.state
    //101:直播中,102:未开始,103已结束,104禁播,105:暂停,106:异常,107:已过期
    return (
      <View className='live'>
        <ScrollView className='live-scroll' scrollY onScrollToUpper={this.toTopChange.bind(this)} onScrollToLower={this.toBottomChange.bind(this)}>
          {liveInfoList && liveInfoList.length > 0

            ? liveInfoList.map((item) => {
              if (item.liveStatus === '101' || item.liveStatus === '105' || item.liveStatus === '103') {
                return (
                  <View className='live-card'>
                    <View className='live-card-livePlayer'>
                      <Image src={item.coverImg} onClick={this.toLiveRecord.bind(this, item.roomId)}></Image>
                      <View className='identification'>
                       <View className='identification-left'>回看</View>
                       <View className='identification-right'>{item.startTime}</View>
                      </View>
                      <View className='anchor-name'>主播:{item.anchorName}</View>
                    </View>
                    <View className='live-card-name'>{item.name}</View>
                  </View>
                )
              }
            }) : ''
          }
        </ScrollView>
      </View>
    )
  }
View Code

具体操作已微信小程序的官网为主,此举为自己理解走过的坑

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM