小程序直播功能开发

article/2025/10/30 12:47:15

近期为一家企业开发小程序,用户提出了在小程序中增加直播功能。所幸小程序本身就提供了直播组件。具体开发文档可见官方说明。

小程序直播是微信官方提供的商家经营工具。通过调用该组件,商家可以在小程序中实现直播互动与商品销售闭环。其开发部分主要参考官方文档,使用更多是在微信小程序后台的直播控制台中进行操作,具体参考官方的操作手册。

一、接入小程序组件

在小程序某个中间页面的json文件中加入组件引用:

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

你的plugins可能不止一个,因此,主要是在json文档的plugins部分加入"live-player-plugin",代码中的注释部分需要删除。其中的版本部分需要根据直播组件版本更新记录中查询(如下图黄色部分)。至此就在小程序中引入了直播组件。

 二、直播间列表

微信小程序直播间开发api主要参考下面的内容进行开发。

 官方的文档地址为:获取直播间列表和回放 | 微信开放文档

该接口支持https调用和云调用,调用额度:100000次/一天。

因为我们开发的小程序主要是云开发方式,且为了减少鉴权的要求,因而使用云调用方式。

设计云函数:getLiveRooms:

exports.main = async (event, context) => {let start=event.start;let limit=event.limit;let result=''try {result= await cloud.openapi.liveBroadcast.getLiveInfo({start: start,limit: limit})} catch (error) {result=error}return result}

在小程序页面端调用该云函数:

  async LoadRooms() {var that = this;wx.cloud.callFunction({name: 'getLiveRooms',data: {start: this.data.pageSize * this.data.pageIndex,limit: this.data.pageSize},success(res) {let result=res.result;console.log(result)if (result.errCode == 0) {that.setData({roomList: that.data.roomList.concat(result.roomInfo)});} else {if (that.data.pageIndex == 0) {that.setData({isEmpty: true});} else {that.setData({isNoData: true});}}}});},

wxml页面展示直播间列表:

<view wx:else="{{isEmpty}}"><view wx:for="{{roomList}}" wx:key="index"><navigator url="plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id={{item.roomid}}" class="room"><view style="font-weight: 800;opacity: 0.8;display: flex;justify-content: space-between;align-items: center;">{{item.name}}<subscribe room-id="{{item.roomid}}" width="80" height="20" font-size="12" color="#eee" background-color="#f88616" bindsubscribe="onSubscribe"></subscribe></view><image class="room_img" src="{{item.coverImg}}" mode="aspectFill"></image><view class="romm_desc"><text>主播:{{item.anchorName}}</text><text>{{tools.formatTime(item.startTime*1000)}}</text></view></navigator></view>
</view>

三、直播订阅组件使用

在wxml页面直接加入订阅组件:

<subscribe room-id="{{item.roomid}}" width="80" height="20"font-size="12" color="#eee" background-color="#f88616" bindsubscribe="onSubscribe">
</subscribe>

组件的宽度、高度、背景颜色、文字颜色等都可以自定义,只要传入每个房间的roomid即可。组件监听的时间为:onSubscribe,可以在其中进行其他操作。

四、一点说明

官方文档中可能由于更新不及时,或者多个文档会存在冲突,因此对如roomid,coverImg等等返回值对象的字段写法要进行调整。


http://chatgpt.dhexx.cn/article/sUMLhSsS.shtml

相关文章

微信小程序怎么直播?

我们目前使用的小程序都是支持直播功能的&#xff0c;小程序直播功能是通过小程序直播组件实现的&#xff0c;这是微信为商家提供的实时视频直播工具&#xff0c;可以帮助商家快速通过小程序向用户提供优质的直播内容。同时&#xff0c;借助小程序丰富的营销功能&#xff0c;使…

创客匠人:怎么用微信小程序直播?

无论是哪个直播平台提供直播服务&#xff0c;首先都必须要安装相应的手机app&#xff0c;而就是这么一个小小的操作&#xff0c;也能够把大批的用户拒之门外。为了让直播服务更加轻便&#xff0c;不需要这么繁琐的过程也能获取直播内容&#xff0c;微信小程序也加入直播行列。说…

PDF阅读器:你不可不学的标记精读法

孔子晚年喜读《易经》&#xff0c;反复研读&#xff0c;以致把捆竹书的牛皮绳子都磨断了三次&#xff0c;留下了“韦编三绝”的佳话。阅读的实质是什么&#xff0c;是要掌握书中要义。在阅读过程中勾画重点、勾画佳句、标记疑问&#xff0c;就是了解作者写作目的并与作者产生思…

爆发:大数据时代预见未来的新思维 (湛庐文化•财富汇) - 电子书下载 -(百度网盘 高清版PDF格式)...

爆发&#xff1a;大数据时代预见未来的新思维 (湛庐文化•财富汇)-艾伯特-拉斯洛•巴拉巴西 (Albert-Lszl Barabsi) 在线阅读 百度网盘下载(9jvg) 书名:爆发&#xff1a;大数据时代预见未来的新思维 (湛庐文化•财富汇) 作者:艾伯特-拉斯洛•巴拉巴西 (Albe…

学术研究入门,如何下载论文?

来源: AINLPer 微信公众号&#xff08;每日更新…&#xff09; 编辑: ShuYini 校稿: ShuYini 时间: 2021-11-16 有很多刚刚接触研究领域的小伙伴不知道怎么找论文和下载论文&#xff0c;这里作者结合自己的经验总结了一下&#xff0c;希望对你有帮助。 查找论文的方式主要有以下…

【工作感悟】java编程规范pdf下载

前言 要相信,你现在所有的努力和付出都会在将来的某一天回报给你! 首先阿里巴巴作为国内互联网行业的领头羊,培养了一代又一代的IT技术人才,很多想进阿里这些互联网大厂的程序员看中的不仅仅是高薪+丰厚的福利待遇,同样也看中了学习氛围以及人脉圈子,这些资源在你以后对你…

读书笔记 | 国富论(卷一)

半月未更新&#xff0c;期间主要窝在广州窝了半月左右&#xff0c;除了帮老姐带娃太闹心&#xff08;此处必须歌颂一下母亲的伟大&#xff09;&#xff0c;一切还不错。除工作&#xff0c;带娃外&#xff0c;还陪母上大人桂林阳朔游&#xff0c;拜访中大的老师和博士&#xff0…

性能本质论

摘要 对于开发者、技术管理者、架构师、系统分析师和项目经理来说&#xff0c;创建具备高性能特征的复杂软件都是一件极其困难的事。然而&#xff0c;通过了解一些基本原理&#xff0c;性能问题的解决和预防可以更简单可靠。本文讲述了这些基本原理&#xff0c;涵盖了一系列的目…

Python轻松实现PDF格式转换(附详细源码)

公众号后台回复“图书“&#xff0c;了解更多号主新书内容 作者&#xff1a;J哥 来源&#xff1a;菜J学Python 项目背景 网上PDF转换工具眼花缭乱&#xff0c;选择困难症&#xff0c;有些甚至还收费&#xff1b;直接以其他格式打开PDF效果一般较差&#xff1b;有些小可爱通过复…

KDD 2022 | 量化交易相关论文(附论文链接)

写在前面 ACM SIGKDD国际会议&#xff08;简称 KDD&#xff09;是由ACM的数据挖掘及知识发现专委会主办的数据挖掘研究领域的顶级年会&#xff0c;属于CCF A类会议。第28届KDD会议于2022于8月14日至18日在美国华盛顿举行。KDD 会议包含 Research 和 Applied Data Science 两个 …

分享|数智化转型咨询赋能白皮书2021(附PDF)

在创世界一流“力量大厦”发展战略指引下&#xff0c;中国移动凝聚全集团数智化转型相关能力&#xff0c;发挥公司技术、生态、经验势能优势&#xff0c;围绕“能力即服务”价值实现体系&#xff0c;系统性打造中国移动特色的“1357 数智化转型赋能方法论”&#xff0c;即1个核…

ERP_课程论文(hunnu)

目录 一、概述 1.本课程的内容 2.企业情况 二、主要内容&#xff08;三年对战&#xff09; 1.第一年规划 2.第二年规划 3.第三年规划 三、结语 1.学习心得 &#xff08;1&#xff09; 定量分析 &#xff08;2&#xff09; 租买产房 &#xff08;3&#xff09; 建设…

用户体验的要素pdf_用户运营思路(35份)

用户运营思路(35份) ├1 用户画像指导用户精细化运营.pdf ├2 2019用户生命周期运营白皮书-京东尼尔森-2019.11-57页.pdf ├3 从战术到战略&#xff0c;如何获取&运营早期用户.doc ├4 社群变现的道与术&#xff1a;私域流量&用户运营.pdf ├5 易观-智能用户…

《幸福资本论》读书笔记

2019独角兽企业重金招聘Python工程师标准>>> 这是一本小书&#xff0c;比较薄。它还有一个副标题-为什么梵高受穷&#xff0c;毕加索却很富有。但我一直没有发现这本书跟这两位画家有什么关系。真的没有关联上。书中倒是有一段描述毕加索的故事&#xff0c;对这个故…

数据中Byte和Bit的区别

数据中的Byte和Bit的区别 首先我们认识一下他们是什么 Byte&#xff08;字节&#xff0c;简称B&#xff09; 是计算机信息技术用于计量存储容量的一种计量单位&#xff0c;也表示一些计算机编程语言中的数据类型和语言字符。 一个字节存储8位无符号数&#xff0c;储存的数值范…

bit ( 比特 )和 Byte(字节)的关系?

20 提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一.存储单位的bit 和 Byte二.字节与字符的区别&#xff1f;三.网速怎么算&#xff1f;总结 前言 bit ( 比特 )和 Byte&#xff08;字节&#xff09;的关系&…

bit 与 Byte 的区别

bit 与 Byte 的区别 一、用途不一样 Bit 意为"位"或"比特"&#xff0c;是计算机运算的基础单位&#xff1b;Byte 意为"字节"&#xff0c;是计算机文件大小的基本计算单位&#xff1b; 二、代表的大小不同 1 bit 就是1位二进制数&#xff0c;…

bit(比特)与Byte(字节)的区别与关系

1.bit:位 &#xff08;小写b) 也称比特 是英文 binary digit的缩写 二进制数系统中&#xff0c;每个0或1就是一个位(bit) 位是数据存储&#xff08;计算机中信息&#xff09;的最小单位 计算机中的CPU位数指的是CPU一次能处理的最大位数。例如32位计算机的CPU一次最多能处理32…

bit与byte的区别详解

bit和byte同译为"比特"&#xff0c;都是数据量度单位 区别&#xff1a; 一. 容量大小不同 bit&#xff08;比特&#xff09;是表示信息的最小单位&#xff0c;是二进制数的一位包含的信息或2个选项中特别指定1个的需要信息量。 1byte8bits byte是数据存储的基础单…

浅谈C语言的输入输出函数

目录 前言 一、通过一个简单的例子&#xff0c;先初始下scanf函数和printf函数&#xff08;此例子出自于谭浩强老师所著的《C程序设计》第四版&#xff09; 二、浅谈printf函数 1. printf函数的一般格式 2.格式字符 三、浅谈scanf函数 1.scanf函数的一般形式 2.scanf函…