当前位置:   article > 正文

一文教你uni-app开发小程序直播功能,轻松打造专属直播间!_小程序直播系统开发

小程序直播系统开发
1、微信后台申请插件开通

微信后台 登录微信后台
点击设置中的第三方设置 —> 添加插件 --> 点击小程序直播组件(获取AppID)

fae32202311281014252851.png

64dd4202311281015057557.png

7b058202311281015413723.png

2、微信后台开通直播功能

点击进入直播后台系统

ff636202311281016392015.png

这里就是我们创建的直播功能区域

be72d202311281017211255.png

3、代码中接入直播插件AppID

支持在主包或分包内引入【直播组件】 live-player-plugin 代码包
(注:直播组件不计入代码包体积),项目根目录的 app.json 引用,示例代码如下:
uni-app开发中在pages.json引入

(1) 主包引入和"pages"同级

  1. "plugins": {
  2. "live-player-plugin": {
  3. "version": "1.3.0", // 注意填写该直播组件最新版本号,微信开发者工具调试时可获取最新版本号(复制时请去掉注释)
  4. "provider": "wx2b03c6e691cd7370" // 必须填该直播组件appid,该示例值即为直播组件appid(复制时请去掉注释)
  5. }
  6. }

Copy

(2) 分包引入

  1. "subpackages": [
  2. {
  3. "plugins": {
  4. "live-player-plugin": {
  5. "version": "1.3.0", // 注意该直播组件最新版本号,微信开发者工具调试时可获取最新版本号(复制时请去掉注释)
  6. "provider": "wx2b03c6e691cd7370" // 必须填该直播组件appid,该示例值即为直播组件appid(复制时请去掉注释)
  7. }
  8. }
  9. }
  10. ]

Copy

4、【直播组件】如何使用

直接在直播控制台创建好直播间,拿到房间id;
相关文档 微信接入文档

进入直播间方式

1、使用 navigator 组件跳转进入直播间

  1. // 1、使用 navigator 组件跳转进入直播间
  2. <navigator url="plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id={{roomId}}&custom_params={{customParams}}"></navigator>

Copy

2、使用 navigateTo 方法跳转进入直播间

  1. // 2、使用 navigateTo 方法跳转进入直播间
  2. let roomId = [直播房间id] // 填写具体的房间号,可通过下面【获取直播房间列表】 API 获取
  3. let customParams = encodeURIComponent(JSON.stringify({ path: 'pages/index/index', pid: 1 })) // 开发者在直播间页面路径上携带自定义参数(如示例中的path和pid参数),后续可以在分享卡片链接和跳转至商详页时获取,详见【获取自定义参数】、【直播间到商详页面携带参数】章节(上限600个字符,超过部分会被截断)
  4. wx.navigateTo({
  5. url: `plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id=${roomId}&custom_params=${customParams}`
  6. })

Copy

3、服务端获取数据,提供给前端获取!

644ae202311281019345395.png

4、控制台创建直播

709c6202311281020039672.png

5、手机扫码打开

e5773202311281020377955.png

5、直播组将状态获取

小程序直播订阅组件能力

  1. 小程序端引入 live-player-plugin
  2. let livePlayer = requirePlugin('live-player-plugin')
  3. console.log(livePlayer,'livePlayer====事件')
  4. livePlayer.getOpenid(e) // 获取用户openid参数
  5. livePlayer.getShareParams(e) // 获取分享卡片链接参数
  6. livePlayer.getSubscribeStatus(e) // 获取单次订阅状态
  7. livePlayer.getLiveStatus(e) // 获取直播状态
  8. // 往后间隔1分钟或更慢的频率去轮询获取直播状态
  9. // 101: 直播中, 102: 未开始, 103: 已结束, 104:禁播, 105: 暂停中, 106: 异常,107:已过期

Copy

a654f202311281021316475.png

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/600409
推荐阅读
相关标签
  

闽ICP备14008679号