微信小程序直播接入
申请开通小程序直播
1、申请小程序直播有以下几个硬性指标:
1. 满足小程序18个开放类目
2. 主体下小程序近半年没有严重违规
3. 小程序近90天内有过支付行为
4. 主体下公众号累计粉丝数大于100人
5. 主体下小程序连续7日日活跃用户数大于100人
6. 主体在微信生态内近一年广告投放实际消费金额大于1万元
注:条件1、2、3为必须满足,4、5、6为满足其中一项即可
2、登录微信公众平台,提交申请
左侧菜单栏找到直播,即可申请。
小程序接入直播组件
1、引入直播组件
支持在主包或分包内引入【直播组件】 live-player-plugin 代码包(注:直播组件不计入代码包体积),项目根目录的 app.json 引用
(1)主包引入
"plugins": {
"live-player-plugin": {
"version": "1.1.10", // 注意填写该直播组件最新版本号,微信开发者工具调试时可获取最新版本号(复制时请去掉注释)
"provider": "wx2b03c6e691cd7370" // 必须填该直播组件appid,该示例值即为直播组件appid(复制时请去掉注释)
}
}
(2)分包引入
"subpackages": [
{
"plugins": {
"live-player-plugin": {
"version": "1.1.10", // 注意该直播组件最新版本号,微信开发者工具调试时可获取最新版本号(复制时请去掉注释)
"provider": "wx2b03c6e691cd7370" // 必须填该直播组件appid,该示例值即为直播组件appid(复制时请去掉注释)
}
}
}
]
2、获取直播列表
通过调用接口进行获取,接口详情
下面是使用C#请求此接口的示例
public string JsCode2Session()
{
string appid = XXX;
string secret = XXX;
string JsCode2SessionUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";
var url = string.Format(JsCode2SessionUrl, appid, secret);
var str = HttpHelper.HttpGet(url);
try
{
var jo = JsonHelper.ToJObject(str);
string access_token = jo["access_token"].ToString();
return access_token;
}
catch (Exception ex)
{
return "";
}
}
[HttpGet]
public async Task<TData<List<RoomInfo>>> GetLivePlayer()
{
string url = "https://api.weixin.qq.com/wxa/business/getliveinfo?access_token={0}";
string token = JsCode2Session();
url = string.Format(url, token);
var postData = new QueryArgs
{
start = 0,
limit = Int32.MaxValue
};
string result = HttpHelper.HttpPost(url, Newtonsoft.Json.JsonConvert.SerializeObject(postData));
List<RoomInfo> roomInfos = new List<RoomInfo>();
TData<List<RoomInfo>> obj = new TData<List<RoomInfo>>();
if (!string.IsNullOrEmpty(result))
{
var json = JsonHelper.ToJObject(result);
var error = json["errcode"].ToString();
if (error == "0")
{
roomInfos = JsonHelper.ToObject<List<RoomInfo>>(json["room_info"].ToString());
obj.Result = roomInfos;
obj.TotalCount = roomInfos.Count;
obj.Tag = 1;
}
else
{
obj.TotalCount = 0;
obj.Message = json["errmsg"].ToString();
obj.Tag = 0;
}
}
return obj;
}
//房间信息
public class RoomInfo
{
public string name { get; set; }
public string roomid { get; set; }
public string cover_img { get; set; }
public string share_img { get; set; }
public LiveStatus live_status { get; set; }
public string start_time { get; set; }
public string end_time { get; set; }
public string anchor_name { get; set; }
public int total { get; set; }
}
//直播状态
public enum LiveStatus
{
直播中 = 101,
未开始,
已结束,
禁播,
暂停,
异常,
已过期
}
通过调用GetLivePlayer接口即可获取直播间列表。
3、使用直播组件
(1)在wxml页面遍历所有直播
<block wx:for="{{liveList}}" wx:key="{{title}}">
<view style="width:350rpx" bindtap="tolive" data-roomid="{{item.roomid}}" class="recommend_sp_img">
<image class="image1" src="{{item.cover_img}}" mode="aspectFill"></image>
<text class="shiping">{{item.name}}</text>
</view>
</block>
(2)在js页面进行跳转
tolive:function(e){
console.log(e)
let roomId = e.currentTarget.dataset.roomid
wx.navigateTo({
url: `plugin-private://wx2b03c6e691cd7370/pages/live-player-plugin?room_id=${roomId}`
})
}
直播间创建
1、在微信公众平台中的直播间控制台创建
2、通过接口创建
创建直播间的接口详情
微信小程序直播接入的更多相关文章
- 微信小程序支付接入实战
1. 微信小程序支付接入实战 1.1. 需求 最近接到一个小程序微信支付的需求,需要我写后台支持,本着能不自己写就不自己写的cv原则,在网上找到了些第三方程序,经过尝试后,最后决定了这不要脸作者的 ...
- 微信小程序直播
微信小程序直播(转) 通过PC实现推流,然后用小程序进行直播播放,也就是PC->小程序. 小程序支持 小程序的直播能力只针对某些类目开放并且需要申请开通. 支持的类目 社交 直播 教育 在线教育 ...
- 为什么要学习微信小程序直播开发?最新的小程序直播介绍和优势分析!
小程序直播的介绍 “小程序直播”是微信提供给开发者的实时视频直播工具,包括直播管理端.主播端和观众端等模块,支持提供常用的用户互动和营销促销工具. 开发者只需在小程序中引入相关代码并在管理后台完成配置 ...
- uni-app开发经验分享十九: uni-app对接微信小程序直播
uni-app对接微信小程序直播 1.登录微信小程序后台-点击>设置->第三方设置->添加直播插件 2.添加直播组件后->点击<详情> 记录这两个参数直播 ...
- ***腾讯云直播(含微信小程序直播)研究资料汇总-原创
这段时间抽空研究了下直播技术,综合比较了下腾讯云直播的技术和文档方面最齐全,现把一些技术资料和文档归集如下: 1.微信小程序移动直播入门导读 https://cloud.tencent.com/doc ...
- 微信小程序-未接入app.json错误
微信小程序建立新项目之后会出现app.json文件未接入错误如下图: 一般是因为在下图添加新项目,项目目录这一列,如果不事先建立一个空的文件夹,直接选择则不会出现quickstartup界面 所以在建 ...
- 如何让微信小程序快速接入七牛云
如果你确定用七牛运行小程序的话,给大家分享一个九折优惠码:61d1fd4d1 月 9 日 微信小程序正式发布,小程序终于揭开了它神秘的面纱,开发者对小程序的追捧更是热度不减.从小程序的热门应用场景来看 ...
- 微信小程序支付接入注意点
一.微信支付后台服务器部署 服务器采用ubuntu16.04 + php7.0 + apache2.0. 微信支付后台服务使用了curl 和 samplexml ,因此php.ini配置中必须开启这两 ...
- 2018-01微信小程序--直播
一. 小程序直播支持的格式 目前小程序支付两种格式直播 1) flv格式直播 2) rtmp格式直播 二. 能够开通小程序直播的行业类目 由于直播需要资质, 并不是每个企业都能够开通小程序直播, 微信 ...
随机推荐
- 目录扫描、Nmap
一.基本定义 1.目录扫描: 扫描站点的目录,寻找敏感文件(目录名.探针文件.后台.robots.txt.备份文件等). 2.目录:站点结构,权限控制不严格. 3.探针文件:服务器配置信息,例:php ...
- 解决MySql Access denied for user 'root'@'192.168.1.119' to databse 的问题
因为ip未授权,在navicat中执行 grant all privileges on *.* to 'root'@'192.168.1.119' identified by 'root' with ...
- 微众银行FATE联邦学习框架
参考:https://github.com/webankfintech/fate https://www.fedai.org/#/ 一.Docker Standalone 安装 FATE $ sh b ...
- php的负整数和正整数相加(负数以补码的形式存在内存,正数以原码的形式存在内存)
首先先理解原码,反码,补码 十进制为例 原码: 5的原码:00000101 反码:11111010 补码:补码在末尾加1即 11111011 (正数的补码就是其负数,即5的补码就是-5) 正数在 ...
- android 使用svg 和 webp
1.参考 https://chris.banes.dev/2016/02/25/appcompat-vector/#enabling-the-flag 2.使用svg 2.1 在中打开svg选项 an ...
- vue mixin混入
基本结构 export default { data() { return {} }, computed: { }, methods: { }, filters: { }, created() { } ...
- 跟着兄弟连系统学习Linux-【day01】
day01-20200527 p1.unix发展历史 (1960,有一个实验室,三个团队组成,开发了Unix雏形,但是因为没有办法发版,所以就荒废了.这个小组里面有一个人,打游戏的时候 ...
- shell中列表的定义与循环
字符串列表定义方法1: a=(f1 f2 f3 f4) for i in ${a[*]}#遍历每一个列表值 for i in ${a[@]}#遍历每一个列表值 实例: #!bin/basha=(f1 ...
- Python的链接数上升得太快了!足见Python之火!
- zookeeper与分布式系统
1.1. 分布式系统基础知识 一个tomcat打天下的时代,不能说完全淘汰了,在一个管理系统,小型项目中还经常使用,这并不过分,出于成本的考虑,这反而值得提倡. 1.1.1. 分布式系统是什么 分 ...